Misalai masu Aiki na 12 na Linux grep Command


Shin kun taɓa fuskantar aikin neman wata kirtani ko tsari a cikin fayil, amma ba ku san inda za ku fara nema ba? To, a nan ne grep don ceto!

grep babban mai binciken tsarin fayil ne wanda ke zuwa sanye take akan kowane rarraba Linux. Idan, saboda kowane dalili, ba a shigar da shi akan tsarin ku ba, zaku iya shigar dashi cikin sauƙi ta hanyar sarrafa fakitinku (apt-samun akan Debian/Ubuntu da yum akan RHEL/CentOS/Fedora).

$ sudo apt-get install grep         #Debian/Ubuntu
$ sudo yum install grep             #RHEL/CentOS/Fedora

Na gano cewa hanya mafi sauƙi don jika ƙafafunku tare da grep shine kawai nutsewa daidai kuma kuyi amfani da wasu misalan duniya na gaske.

1. Bincika kuma Nemo Fayiloli

Bari mu ce kun shigar da sabon kwafin sabon Ubuntu akan injin ku, kuma za ku ba da rubutun Python harbi. Kun kasance kuna zazzage gidan yanar gizon neman koyawa, amma kun ga cewa akwai nau'ikan Python iri biyu da ake amfani da su, kuma ba ku san wanda mai saka Ubuntu ya shigar a kan tsarin ku ba, ko kuma idan ya shigar da kowane nau'i. Kawai gudanar da wannan umarni:

# dpkg -l | grep -i python
ii  python2.7                        2.7.3-0ubuntu3.4                    Interactive high-level object-oriented language (version 2.7)
ii  python2.7-minimal                2.7.3-0ubuntu3.4                    Minimal subset of the Python language (version 2.7)
ii  python-openssl                   0.12-1ubuntu2.1                     Python wrapper around the OpenSSL library
ii  python-pam                       0.4.2-12.2ubuntu4                   A Python interface to the PAM library

Da farko, mun gudu dpkg -l, wanda ya lissafa abubuwan da aka shigar * .deb akan tsarin ku. Na biyu, mun tura wannan fitarwa zuwa grep -i python, wanda sauƙaƙan jihohi\je zuwa grep kuma tace su dawo da komai tare da 'python' a ciki. Zaɓin -i yana nan don yin watsi da shari'ar, kamar yadda grep yana da hankali.Amfani da zaɓin -i kyakkyawar dabi'a ce ta shiga, sai dai idan ba shakka kuna ƙoƙarin ƙusa wani takamaiman bincike.

2. Bincike da Tace Fayiloli

Hakanan za'a iya amfani da grep don bincika da tacewa cikin fayiloli ɗaya ko fayiloli da yawa. Bari mu ɗauki wannan yanayin:

Kuna samun matsala tare da Sabar gidan yanar gizon ku ta Apache, kuma kun isa ɗaya daga cikin manyan taruka masu ban sha'awa akan yanar gizo suna neman taimako. Mai kirki wanda ya amsa maka ya nemi ka saka abubuwan da ke cikin fayil ɗin /etc/apache2/sites-available/default-ssl. Shin ba zai kasance da sauƙi a gare ku ba, mutumin da ke taimaka muku, da duk wanda ke karanta shi, idan kuna iya cire duk layin da aka yi sharhi? To za ku iya! Kawai gudanar da wannan:

# grep –v “#”  /etc/apache2/sites-available/default-ssl

Zaɓin -v yana gaya wa grep don jujjuya fitowar sa, ma'ana cewa maimakon buga layukan da suka dace, yi akasin haka kuma buga duk layin da bai dace da furci ba, a wannan yanayin, layin # sharhi.

3. Nemo duk .mp3 Files Kawai

grep na iya zama da amfani sosai don tacewa daga stdout. Alal misali, bari mu ce kana da babban fayil mai cike da fayilolin kiɗa a cikin gungun nau'i daban-daban. Kuna son nemo duk fayilolin * .mp3 daga mai zane JayZ, amma ba kwa son kowane waƙoƙin da aka sake haɗawa. Yin amfani da umarnin nemo tare da bututun grep guda biyu zai yi abin zamba:

# find . –name “*.mp3” | grep –i JayZ | grep –vi “remix”

A cikin wannan misalin, muna amfani da nemo don buga duk fayilolin tare da tsawo * .mp3, buga shi zuwa grep -i don tacewa da buga duk fayiloli tare da sunan \JayZ sannan kuma wani bututu zuwa grep -vi wanda. yana tacewa kuma baya buga duk sunaye da zaren (a kowane hali) \remix.

4. Nuna Adadin Layukan Gaba ko Bayan Binciken Bincike

Wasu zaɓuɓɓukan zaɓin su ne -A da -B masu sauyawa, waɗanda ke nuna layin da suka dace da adadin layukan ko dai waɗanda suka zo gabanin ko bayan kirtan bincike. Yayin da shafin mutumin ya ba da cikakken bayani, na sami ya fi sauƙi in tuna zaɓuɓɓuka kamar -A = bayan, da -B = kafin:

# ifconfig | grep –A 4 eth0
# ifconfig | grep  -B 2 UP

5. Buga Adadin Layukan da ke Wajen Match

Zaɓin grep's -C yayi kama da, amma maimakon buga layin da suka zo ko dai kafin ko bayan kirtani, yana buga layin a kowace hanya:

# ifconfig | grep –C 2 lo

6. Kidaya Adadin Matches

Mai kama da kunna kirtani na grep zuwa ƙidayar kalma (wc shirin) zaɓin ginanniyar grep na iya yi muku iri ɗaya:

# ifconfig | grep –c inet6

7. Bincika Fayilolin Ta hanyar Ba da Taɗi

Zaɓin -n don grep yana da amfani sosai lokacin zana fayiloli yayin tattara kurakurai. Yana nuna lambar layi a cikin fayil ɗin kirgin bincike da aka bayar:

# grep –n “main” setup..py

8. Bincika kirtani akai-akai a cikin duk kundayen adireshi

Idan kuna son nemo kirtani a cikin kundin adireshi na yanzu tare da duk kundin adireshi, zaku iya tantance zaɓin –r don bincika akai-akai:

# grep –r “function” *

9. Neman tsarin duka

Wuce zaɓin –w don bincika grep ga dukkan tsarin da ke cikin kirtani. Misali, amfani da:

# ifconfig | grep –w “RUNNING”

Za a buga layin da ke ɗauke da ƙirar a cikin ƙididdiga. A daya bangaren, idan kun gwada:

# ifconfig | grep –w “RUN”

Ba za a mayar da komai ba saboda ba muna neman tsari ba, sai dai kalma ɗaya.

10. Bincika kirtani a Gzipped Files

Abubuwan da suka cancanci ambaton su ne abubuwan grep. Na farko shine zgrep, wanda, kama da zcat, shine don amfani akan fayilolin gzipped. Yana ɗaukar zaɓuɓɓuka iri ɗaya kamar grep kuma ana amfani dashi ta hanya iri ɗaya:

# zgrep –i error /var/log/syslog.2.gz

11. Daidaita Magana akai-akai a cikin Fayiloli

Egrep wani nau'i ne na daban wanda ke tsaye ga \Extended Global Regular Expression Yana gane ƙarin bayanin meta-haruffa kamar a +? | da().

egrep yana da matukar amfani don bincika fayilolin tushen, da sauran nau'ikan lambobi, idan buƙatar ta taso. Ana iya kiran shi daga grep na yau da kullun ta hanyar tantance zaɓi -E.

# grep –E

12. Bincika Ƙararren Ƙararren Ƙararren Ƙwararren Ƙwararren Ƙwararren Ƙwaƙwalwa

Fgrep yana bincika fayil ko jerin fayiloli don tsayayyen kirtani. Yayi daidai da grep-F. Hanyar gama gari ta amfani da fgrep ita ce shigar da fayil na alamu zuwa gare shi:

# fgrep –f file_full_of_patterns.txt file_to_search.txt

Wannan mafari ne kawai tare da grep, amma kamar yadda wataƙila kuna iya gani, yana da matukar amfani ga dalilai iri-iri. Baya ga umarnin layi ɗaya mai sauƙi da muka aiwatar, ana iya amfani da grep don rubuta ayyukan cron masu ƙarfi, da rubutun harsashi masu ƙarfi, don farawa.

Kasance mai ƙirƙira, gwada zaɓuɓɓukan da ke cikin shafin mutum, kuma ku fito da maganganun grep waɗanda ke biyan manufofin ku!