Omnye umbhobho okanye umbhobhoe ngokwenene ngumbhobho ofumanekayo we-UNIX / Linux kwaye uluncedo kakhulu. Kodwa ukuqonda ngokupheleleyo ukuba yintoni umbhobho, kuya kufuneka wazi ukuba kwindawo ye-nix ine-3 eyakhelwe-ngaphakathi kwimithombo yedatha. Oko, kwabo bangaziyo, kuthetha ukuba idatha inokuhamba ukuya okanye ukusuka kumanqaku amathathu.
Emva koko uya kukuqonda oku ngendlela engcono, kodwa into endifuna ukuyenza icace kuwe ngoku kukuba ngombhobho into onokuyenza kukutshintsha ukusuka kwelinye lala manqaku uye kwamanye. Oku kuvumela ukuthatha imveliso okanye isiphumo sokuba inkqubo iyiphose kwigalelo lomnye oza kuyisebenzisa, njl. Ndiza kuzama ukuyicacisa ngemizekelo ebonakalayo enokukunceda uyiqonde kakuhle.
Ezo ngongoma bendithetha ngazo okanye Imijelo yedatha, Bazi:
- stdin: iyahambelana no-0 kwaye ligalelo eliqhelekileyo. Ngokubanzi, igalelo eliqhelekileyo lenkqubo * nix yikhibhodi. Oko kukuthi, into oyichwethayo iya kuba lulwazi olusetyenzisiweyo. Unesixhobo esikhethekileyo esihambelana nayo esiyi / dev / stdin.
- Yima: echongwe nge-1, sisiphumo esisezantsi. Ngokwesiqhelo iyahambelana nokubeka esweni okanye isikrini sekhompyuter yakho, kulapho ungabona khona ulwazi. Umzekelo, xa uqhuba i-ls eyalela uluhlu lweziqulatho ziya kuboniswa kwiscreen, akunjalo? Isixhobo esidibeneyo si / dev / stdout.
- kwiba: echongwe nge-2, sisiphumo esisezantsi somgangatho, kuba xa kukho impazamo kwinkqubo. Isixhobo esidibeneyo si / dev / stderr.
Ngombhobho ungenza imveliso esemgangathweni okanye isdout somyalelo omnye udlulise ngokuthe ngqo kwigalelo eliqhelekileyo lomnye. Oko kukuthi, unokwenza enye inkqubo yondle enye. Endaweni yokusebenzisa iiparameter ezingenisiweyo, umbhobho uhambisa ulwazi oluveliswe ngumyalelo wangaphambili ngale mibhobho imelwe ngu |
Con imizekelo uya kuyiqonda ngcono. Masithi ufuna ukudwelisa imixholo yolawulo, kodwa unomdla wokubona amagama ahambelana negama elithi doc. Ke unokusebenzisa umbhobho ukubhobhoza imveliso ye-ls kwigalelo lesihluzo se-grep ukuyixelela ukuba ibonise kuphela ezo zihambelana naloo patheni:
ls -l | grep doc
Ke endaweni yokubonisa onke amagama, ikubonisa nje ezona zinomdla kuwe. Unokwenza okufanayo nomxholo wefayile. Khawufane ucinge ukuba ufuna ukubona ulwazi lweenkqubo ezibizwa ngokuba yi-firefox kwaye ayizizo zonke:
ps aux | grep firefox
Endaweni yokubonisa yonke imveliso yenkqubo ye-ps kwiscreen (stdout), into eyenzayo kukuyihambisa kwigalelo lesihluzo se-grep kwaye ibonisa kuphela kwimveliso ehambelana nephethini ye-firefox kule meko ...
Ukuba ufuna, ungasebenzisa imibhobho eyahlukeneyo ukuzisa ukukhutshwa komyalelo omnye kwigalelo lomnye umthetho wesibini, kunye nokukhutshwa kweso sibini kwigalelo lesithathu, njalo njalo. Umzekelo:
cat libro | grep love | more
Njengoko ubona, amathuba amaninzi, konke onokukucinga kwaye kuvunyelwe. Ndibonise kuphela imigca yokuqala neyokugqibela yefayile, ubale imigca engena kwi-wc evela kuluhlu, kwaye nokuba uyihlele:
cat listado | head cat listado | tail cat listado | wc -l cat listado | sort
Unokusebenza kunye iimpazamo nge | & kwaye umzekelo jonga igama lesilumkiso kwimveliso yeskripthi ukuba iyasilela:
./miscript |& grep alerta
Kwaye okokugqibela, kukho imiyalelo emibini enxibelelene ngokusondeleyo nemibhobho eyiyo tee kunye xargs kwaye banokwandisa amathuba oku. Kwimeko ye-tee, into eya kuyivumela kukubonisa isiphumo senkqubo yangaphambili kwimveliso esemgangathweni ukuze uyibone, kwaye ukongeza kuloo nto, inokuyifaka kwenye ifayile. Umzekelo ungabakho ukuba udwelisa imixholo yolawulo kwaye ufuna ukubona iziphumo ze-ls -l ngalo mzuzu kwaye uphinde ugcinwe kuluhlu lwefayile.txt:
ls -l | tee listado.txt
Ukuba awusebenzisi i-tee, ngekhe ubenakho ukubona iziphumo kwikhonsoli yakho ...
Y xargs inomdla ngakumbi kwezinye iimeko. Kule meko iyakwazi ukwakha umthetho ukusuka kwigalelo eliqhelekileyo elifumana ngombhobho. Ngamanye amagama, iyakwazi ukuthimba yonke into eyayisungulwe yinkqubo edlulileyo kwimveliso yayo kwaye ifikelela kwi-xargs ngombhobho ukuyigqithisela komnye umyalelo njengempikiswano.
Ngaba awuyifumani? Uya kuyibona ibhetele ngakumbi ngomzekelo. Khawufane ucinge xa ufuna ukususa zonke iifayile zoobhontsi besikhombisi, idiski, okanye isahlulelo. Ukuba zininzi, akunakwenzeka ukuba uhambe ngomnye ngomyalelo we-rm ukuzicima ngesandla. Kodwa ngee-xargs ungazenzekelayo yonke into. Kwaye ungayenza usebenzisa ukufumana ukuzifumana, thumela iziphumo ngokufaka ii-xargs kwaye oku kuya kuthi kunike i-rm amagama njengempikiswano. Ke ngoko, zonke ezikhoyo ziya kususwa ngokuzenzekelayo:
find ./ -name "thumbs.db" | xargs rm
Umzekelo, masithi ufumane indawo / i-home / igama / izithumbs.db, / imedia/test/thumbs.db, kunye /tmp/thumbs.db. Ewe, ii-xargs ziya kuzisa kwi-rm ngokungathi ziimpikiswano. Oko kukuthi, ngokungathi senzile: rm /home/name/thumbs.db, emva koko rm /media/test/thumbs.db emva koko rm /tmp/thumbs.db.
Ukugqwesa, olu lwazi lubaluleke kakhulu kuthi kubasebenzisi be-linux
Elinjani inqaku elilungileyo, ngoku ndifunda uhlengahlengiso I / O kwincwadi yeLinux Command Line. Kucacile kum malunga nemibhobho (Ipayipi) kunye nemijelo yedatha emithathu. Igalelo liyaxatyiswa. Ukubulisa.
Umzekelo onee-xargs undilungele njengeglavu. Ngokuchanekileyo namhlanje bendijongene neenkcukacha zokuphuma okuninzi ekufuneka ndikuthumele "ngezahlulo". ii-xargs zahamba ngepinturita.
Enkosi kakhulu!