grep

Как да използвам специални символи в командата Grep?

Как да използвам специални символи в командата Grep?

Функцията на 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. Надявам се, след като прочетете тази статия, ще сте запознати със специалните знаци, които сме използвали в нашата статия.

Как да инсталирате и играете Doom на Linux
Въведение в Doom Серията Doom възниква през 90-те години след пускането на оригиналния Doom. Това беше незабавен хит и от този момент нататък серията ...
Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...