Yadda ake Nemo Takamammen Keɓaɓɓen Kebul ko Kalma a cikin Fayiloli da kundayen adireshi


Shin kuna son nemo duk fayilolin da ke ɗauke da takamaiman kalma ko saƙon rubutu akan tsarin Linux ɗinku gaba ɗaya ko kundin adireshi da aka bayar. Wannan labarin zai jagorance ku kan yadda ake yin hakan, zaku koyi yadda ake sake tono kundayen adireshi don nemowa da jera duk fayilolin da ke ɗauke da saƙon rubutu.

Hanya mai sauƙi don aiwatar da wannan ita ce ta amfani da kayan aikin bincike na ƙirar grep, mai ƙarfi ne, mai inganci, abin dogaro kuma sanannen mai amfani da layin umarni don nemo alamu da kalmomi daga fayiloli ko kundayen adireshi akan tsarin Unix-like.

Umurnin da ke ƙasa zai jera duk fayilolin da ke ɗauke da layi tare da rubutu \check_root, ta hanyar maimaitawa da ƙara tsananta binciken kundin adireshin ~/bin.

$ grep -Rw ~/bin/ -e 'check_root'

Inda zaɓin -R yana gaya wa grep don karanta duk fayiloli a ƙarƙashin kowane kundin adireshi, akai-akai, bin hanyoyin haɗin yanar gizo kawai idan suna kan layin umarni kuma zaɓi -w ya umurce shi don zaɓar waɗannan layin da ke ɗauke da matches waɗanda suka fito. gabaɗayan kalmomi, kuma ana amfani da -e don tantance kirtani (tsarin) da za a bincika.

Ya kamata ku yi amfani da umarnin sudo lokacin bincika wasu kundayen adireshi ko fayilolin da ke buƙatar izinin tushen (sai dai idan kuna sarrafa tsarin ku tare da tushen asusun).

 
$ sudo grep -Rw / -e 'check_root'	

Don watsi da bambance-bambance a yi amfani da zaɓin -i kamar yadda aka nuna:

$ grep -Riw ~/bin/ -e 'check_root'

Idan kana son sanin ainihin layin da layin rubutu ya wanzu, haɗa da zaɓin -n.

$ grep -Rinw ~/bin/ -e 'check_root'

A ɗauka cewa akwai nau'ikan fayiloli da yawa a cikin kundin adireshi da kuke son bincikawa a ciki, kuna iya ƙididdige nau'in fayilolin da za a bincika alal misali, ta hanyar tsawaita su ta amfani da zaɓin --harda.

Wannan misalin yana umurtar grep don duba duk fayilolin .sh kawai.

$ grep -Rnw --include=\*.sh ~/bin/ -e 'check_root'

Bugu da kari, yana yiwuwa a nemo tsari fiye da ɗaya, ta amfani da umarni mai zuwa.

$ grep -Rinw ~/bin/ -e 'check_root' -e 'netstat'

Shi ke nan! Idan kun san kowane dabarar layin umarni don nemo kirtani ko kalma a cikin fayiloli, raba tare da mu ko yin tambayoyi game da wannan batu, yi amfani da hanyar sharhi a ƙasa.