Yadda ake Amfani da Umurnin fgrep don Nemo Rubutun Rubutu a cikin Fayiloli


Taƙaice: A cikin wannan jagorar abokantaka na farko, za mu tattauna wasu misalai masu amfani na umarnin fgrep. A ƙarshen wannan jagorar, masu amfani za su iya yin ayyukan binciken rubutu da kyau ta amfani da layin umarni.

Binciken rubutu yana ɗaya daga cikin ayyukan da aka fi yi. Koyaya, wannan aiki mai sauƙi yana ɗaukar lokaci da sauri idan masu amfani ba su saba da ingantattun kayan aikin ba. A cikin Linux, akwai kayan aikin tace rubutu iri-iri kamar sed, yanke, da sauransu.

Koyaya, a cikin Linux, fgrep shine mafi kyawun amfani don neman rubutu mai sauƙi. A cikin wannan jagorar, za mu tattauna wasu misalan ayyuka na umarnin fgrep waɗanda za a iya amfani da su a rayuwar yau da kullun.

Umurnin fgrep a cikin Linux ya faɗi ƙarƙashin dangin umarnin grep. Duk da haka, ana amfani da shi don bincika ƙayyadaddun tsarin kirtani maimakon maganganu na yau da kullum. Don haka sunan umarnin shine fgrep (Kafaffen GREP).

Tsarin umarnin fgrep yayi kama da sauran umarnin dangi na grep:

$ fgrep [OPTIONS] PATTERNS [FILES]

Don farawa, bari mu ƙirƙiri fayil ɗin rubutu a sarari tare da abubuwan ciki masu zuwa don amfani da misali:

$ cat input.txt

Anan, zamu iya ganin cewa fayil ɗin rubutu yana shirye tare da samfurin abun ciki. Yanzu bari mu tattauna wasu misalan gama gari na umarnin fgrep a cikin misalai kaɗan na gaba.

1. Yaya fgrep Ya bambanta da grep da egrep Dokokin?

Kamar yadda sunan ke nunawa, ana amfani da umarnin fgrep don nemo ƙayyadaddun tsarin kirtani. Yana fassara ƙirar azaman tsayayyen kirtani maimakon magana ta yau da kullun. Don haka yana aiwatar da aikin bincike a cikin ingantaccen lokaci.

Don fahimtar bambancin, bari mu yi amfani da digo (.) tare da umarnin grep.

Wannan sauƙin magana ta yau da kullun ta yi daidai da kowane hali guda ɗaya ban da ƙarshen layi:

$ grep ha. input.txt

A cikin abin da ke sama, muna iya ganin cewa ɗigon (.) ya yi daidai da har, hula, da harafin rubutu.

Yanzu, bari mu yi amfani da wannan tsari tare da umarnin fgrep kuma mu kiyaye sakamakon:

$ fgrep ha. input.txt

A cikin fitowar da ke sama, muna iya ganin cewa umarnin ya kasa nemo tsarin da aka bayar.

Wannan yana faruwa ne saboda umarnin fgrep baya gane kalamai na yau da kullun kuma yana ƙoƙarin nemo tsarin da ba ya wanzu - \ha..

Kuna iya son: Menene Bambanci Tsakanin Grep, Egrep da Fgrep a cikin Linux? ]

2. Yadda Ake Neman Tsarin A Fayil

Bari mu fara da ainihin misali inda za mu nemo ƙwararren kirtani a cikin fayil input.txt:

$ fgrep professionals input.txt

Kamar yadda muke iya gani, tsarin daidaitawa ya yi nasara a wurare biyu kuma an nuna shi cikin launin ja.

3. Yadda Ake Saita Launin Fitarwa na Grep don Samfuran da suka dace

A cikin misalin da ya gabata, mun ga cewa, ta tsohuwa, ƙirar da ta dace tana haskakawa cikin launin ja. Koyaya, zamu iya canza wannan ɗabi'a ta hanyar sanya wata ƙima ta daban ga masu canjin yanayi GREP_COLOR.

Bari mu sanya darajar 32 zuwa madaidaicin muhalli GREP_COLOR don haskaka madaidaicin tsari a cikin koren launi:

$ export GREP_COLOR=32
$ fgrep professionals input.txt

Yanzu, kafin matsawa zuwa misali na gaba, cire madaidaicin yanayi na GREP_COLOR don kunna halin da aka saba:

$ unset GREP_COLOR

4. Yadda Ake Neman Dabaru Da yawa A Fayil

Wani lokaci, muna buƙatar yin daidaitattun ƙira don igiyoyi masu yawa. A irin waɗannan lokuta, zamu iya samar da alamu daga fayil ɗin rubutu maimakon gardamar layin umarni.

Bari mu ƙirƙiri fayil ɗin rubutu wanda ya ƙunshi alamu da yawa akan layi daban:

$ cat pattern.txt

professionals
website

Yanzu, bari mu yi amfani da wannan fayil ɗin tare da zaɓin -f don daidaitawa da yawa:

$ fgrep -f pattern.txt input.txt

A cikin fitowar da ke sama, za mu iya ganin cewa daidaitawar ƙirar ta yi nasara ga ƙwararrun kirtani da gidan yanar gizon.

5. Yadda ake Takaita Adadin Matches a Fayil

Ta hanyar tsoho, umarnin fgrep yana ci gaba da yin daidaitaccen tsari har sai an sarrafa dukkan fayil ɗin.

Koyaya, wani lokacin muna buƙatar iyakance adadin matches. A irin waɗannan lokuta, za mu iya amfani da zaɓin -m tare da umarni:

$ fgrep -m 1 professionals input.txt

TecMint was started on 15th August 2012 by technical professionals and all the

A cikin wannan misalin, umarnin fgrep yana dakatar da sarrafa fayil bayan ya dace da tsarin farko.

6. Yadda Ake Buga Sunan Fayil Lokacin Neman Tsarin

Wani lokaci, kawai muna buƙatar nemo sunan fayilolin da wani tsari ya kasance. A irin waɗannan lokuta, za mu iya amfani da zaɓin -l na umarnin fgrep:

$ fgrep -l professionals input.txt

input.txt

Anan, zamu iya ganin cewa umarnin kawai yana buga sunan fayil maimakon layukan da suka dace.

7. Yadda Ake Buga Sunan Fayil Lokacin da Tsarin Daidaitawa ya kasa

A cikin misalin da ya gabata, mun ga yadda ake buga sunan fayil lokacin da tsarin daidaitawa ya yi nasara. Yanzu, bari mu ga yadda za a yi aikin a baya.

Bari mu yi ƙoƙarin nemo ƙirar da ba ta wanzu a cikin fayil ɗin kuma mu lura da sakamakon:

$ fgrep -L non-existing-word input.txt

input.txt

A cikin wannan misalin, mun yi amfani da zaɓi na -L na umarnin da ke buga sunan fayil lokacin da daidaitawar tsari bai yi nasara ba.

8. Yadda ake Danne Saƙonnin Kuskure

Gudanar da kuskure yana taka muhimmiyar rawa yayin rubuta rubutun harsashi. Koyaya, a wasu yanayi marasa mahimmanci, zamu iya yin watsi da saƙon kuskure a amince.

A cikin fgrep, za mu iya amfani da zaɓin -s wanda ke danne kurakurai masu alaƙa da fayilolin da ba su wanzu ko waɗanda ba za a iya karantawa ba. Don fahimtar wannan hali ta hanya mafi kyau, bari mu yi ƙoƙarin nemo tsari a cikin fayil ɗin da ba ya wanzu:

$ fgrep -s professionals non-existing-file.txt
$ echo $?

2

A cikin fitowar da ke sama, zamu iya ganin cewa umarnin baya nuna wani kuskure akan daidaitaccen rafi na kuskure. Koyaya, ƙimar dawowa mara sifili ne ya ruwaito gazawar.

Baya ga wannan, za mu iya lura da wannan hali lokacin da fayil ɗin ba ya iya karantawa. Don haka, da farko, canza izinin fayil ta amfani da umarnin chmod:

$ chmod 000 input.txt 
$ ls -l input.txt

Yanzu, gwada neman tsarin kuma kula da sakamakon:

$ fgrep -s professionals input.txt 
$ echo $?

A cikin wannan labarin, mun tattauna wasu misalai masu amfani na umarnin fgrep. Masu farawa na iya amfani da waɗannan misalan a cikin rayuwar yau da kullun don haɓaka yawan aiki yayin aiki tare da Linux.

Shin kun san kowane mafi kyawun misali na umarnin fgrep a cikin Linux? Bari mu san ra'ayoyin ku a cikin sharhin da ke ƙasa.