Функцията на grep е да търси текста и да прилага условия към тях. Използва се за търсене в повече от един файл. Grep може да идентифицира текстовите редове в него и да реши по-нататък да приложи различни действия, които включват рекурсивна функция или инверсират търсенето и показват номера на реда като изход и т.н. Специалните знаци са регулярните изрази, използвани в командите за извършване на няколко действия като #,%, *, &, $, @ и т.н. В тази статия ще използваме специални знаци. Grep позволява аргументите като низове, които са посочени като регулярен израз. Също така има способността да замества дума или фраза в нея. Специалните знаци се използват не само като име на файл, но и като данни, налични във файла.
Предпоставка
За да го изпълним, трябва да разполагаме с операционната система Linux. За да може Linux да работи, трябва да имаме предварително инсталирана виртуална кутия. След успешната инсталация на Linux, ще го конфигурирате, като предоставите полезна информация. Следващата стъпка е да влезете в началната страница на Ubuntu Linux. Предоставяйки потребителското име и паролата, ще можете да осъществите достъп до всички приложения -typectrl + alt + t, за да отворите терминала.
Използване на „$“
За да разберете концепцията за специалния символ “$” в командата grep, трябва да имате файл с име file21.текст. „$“ Се използва за показване на всички редове, имащи знак, дефиниран зад „$“, което е точка и запетая, т.е.д., '; $'. Можем да покажем цялото подходящо съдържание с помощта на командата cat.
$ Cat файл21.текст
Сега ще използваме знака в следната команда, за да разберем как работи. “-E” помага да се покаже точното съвпадение във файла.
$ grep -e '; $' файл21.текст
Горният изход показва всички редове във файла с точка и запетая „;“ накрая. Съответният резултат се подчертава срещу всеки ред.
Използвайки"
Това е прост пример за регулярен израз. Във всеки grep оператор се използват единични кавички, когато искаме да съвпаднем с която и да е дума във файл. По същия начин споменахме този пример, за да го направим точен и напълно разбираем за потребителя.
$ grep -e 'Aqsa' файл23.текстРезултатът ще съдържа всички изречения, съдържащи думата Aqsa в него, тъй като търсихме тази дума в командата.
Използвайки []
Квадратните скоби се използват за споменаване на думата, която трябва да се търси между двете двойки квадратни скоби. Тези квадратни скоби са последвани от „*“ в командата. Освен това използвахме -n -I -w -e в командата, за да получим изхода с номера на реда точно, пренебрегвайки чувствителността на регистъра и да получим точното съвпадение, което се е случило повече от веднъж във файл. Ще използваме файл fileg.txt за показване на наличните в него данни. -E се използва като разширен регулярен израз, когато използваме какъвто и да е символ в командата.
$ Cat fileg.текст
Сега ще приложим следната заявка.
$ grep -noiwe -e '[] * файла [] *'.текст
Къде fileg.txt е засегнат файл. Резултатът показва думата „the“, където и да присъства във файла, заедно с номера на реда. Показва се само думата, но не и цялото изречение, защото използвахме -w и -e, за да покажем нейната поява и да покажем точност.
Използвайки '-'
'-' се използва в командата за намиране на съвпадение във файла. -niw отново представлява същото значение, както е описано в примера, споменат по-горе. -m показва първия ред, съдържащ думата в съществуващия файл.
$ grep -niw -m 3 'технически' файл1.текст
Резултатът показва редовете, съдържащи думата технически. Показва се и номерът на реда, който има думата „технически“, който е в 1 и 4.
Използване на „|“
Този специален знак се използва по много начини. По принцип се използва като оператор ИЛИ, за да направи опция между двете дадени имена. В командата grep се използва за работа, така че да извлече записа на едната или двете думи, разделени с „|“. Тук примерът показва извличането на две думи, присъстващи във всички файлове на директорията.
$ grep -I -E -w 'Aqsa | добър' / начало / aqsayasin / файл *
Сега изходът показва и двете думи, присъстващи или в един файл, или в различни файлове. Както споменахме в директорията, ще получим и имена на файлове.
Използване на '^ ()'
Тук '^ ()' действа рекурсивно в сравнение с горния пример.„^“ Показва само една от двете дадени опции, т.е.д., Aqsa и добре, това е на първо място във всеки файл. Резултатът ще съдържа само Aqsa. Egrep е разширен регулярен израз.
$ egrep -I '^ (aqsa | добър)' / home / aqsayasin / *.текст
Използвайки ^ $
Той показва съвпадението на празни / празни низове в края на ред. Ако в текста има някаква празнина, тя се извлича от следната команда.
$ grep -n '^ $' / home / aqsayasin / *.текст
Ще бъдат търсени всички текстови файлове. Резултатът ще съдържа имена на файлове, както и номера на реда, който съдържа празното място във файла. Използвахме -n в командата.
Използвайки []
Тези две скоби показват как работят специалните знаци. [] съдържа думата за търсене. В същото време описва съвпадението във файла N пъти. В следващия пример използвахме 2, който показва появата на всички две възможни думи от предоставената дума в командата, която е „the“.
$ egrep '[the] 2' / home / aqsayasin / file *
Заключение
В статията, както споменахме по-рано, обсъдихме някои основни примери за обяснение на концепцията за специални символи в команда. Създадохме файла и след това изтеглихме наличните данни в него с помощта на командата grep. Надявам се, след като прочетете тази статия, ще сте запознати със специалните знаци, които сме използвали в нашата статия.