Mifano 12 ya Vitendo ya Amri ya Linux Xargs kwa Wanaoanza


Xargs ni amri nzuri ambayo inasoma mtiririko wa data kutoka kwa pembejeo ya kawaida, kisha hutoa na kutekeleza mistari ya amri; ikimaanisha inaweza kuchukua matokeo ya amri na kuipitisha kama hoja ya amri nyingine. Ikiwa hakuna amri iliyoainishwa, xargs hutekeleza mwangwi kwa chaguo-msingi. Wewe pia unaiamuru kusoma data kutoka kwa faili badala ya stdin.

Kuna njia kadhaa ambazo xargs ni muhimu katika matumizi ya kila siku ya safu ya amri. Katika nakala hii, tutaelezea mifano 12 ya amri ya Linux xargs kwa Kompyuta.

1. Mfano wa kwanza unaonyesha jinsi ya kupata picha zote za .png na kuziweka kwenye kumbukumbu kwa kutumia matumizi ya tar kama ifuatavyo.

Hapa, amri ya kitendo -print0 huwezesha uchapishaji wa njia kamili ya faili kwenye pato la kawaida, ikifuatiwa na herufi batili na alama ya -0 xargs inashughulika vyema na nafasi katika majina ya faili.

$ find Pictures/tecmint/ -name "*.png" -type f -print0 | xargs -0 tar -cvzf images.tar.gz

2. Unaweza pia kubadilisha pato la laini-muti kutoka kwa amri ya ls hadi laini moja kwa kutumia xargs kama ifuatavyo.

$ ls -1 Pictures/tecmint/
$ ls -1 Pictures/tecmint/ | xargs

3. Ili kutengeneza orodha fupi ya akaunti zote za watumiaji wa Linux kwenye mfumo, tumia amri ifuatayo.

$ cut -d: -f1 < /etc/passwd | sort | xargs

4. Kwa kudhani una orodha ya faili, na ungependa kujua idadi ya mistari/maneno/wahusika katika kila faili kwenye orodha, unaweza kutumia ls command na xargs kwa kusudi hili kama ifuatavyo.

$ ls *upload* | xargs wc

5. Xarags pia hukuruhusu kupata na kuondoa saraka kwa kurudia, kwa mfano amri ifuatayo itaondoa DomTerm kwa kurudia kwenye saraka Vipakuliwa.

$ find Downloads -name "DomTerm" -type d -print0 | xargs -0 /bin/rm -v -rf "{}"

6. Vile vile kwa amri ya awali, unaweza pia kupata faili zote zilizoitwa net_stats katika saraka ya sasa na kuzifuta.

$ find . -name "net_stats" -type f -print0 | xargs -0 /bin/rm -v -rf "{}"

7. Kisha, tumia xargs kunakili faili kwenye saraka nyingi mara moja; katika mfano huu tunajaribu kunakili faili.

$ echo ./Templates/ ./Documents/ | xargs -n 1 cp -v ./Downloads/SIC_Template.xlsx 

8. Unaweza pia kutumia amri za kubadilisha jina kwa pamoja ili kubadilisha faili zote au saraka ndogo katika saraka fulani kwa herufi ndogo kama ifuatavyo.

$ find Documnets -depth | xargs -n 1 rename -v 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;

9. Hapa kuna mfano mwingine muhimu wa matumizi kwa xargs, inaonyesha jinsi ya kufuta faili zote ndani ya saraka isipokuwa faili moja au chache zilizo na kiendelezi fulani.

$ find . -type f -not -name '*gz' -print0 | xargs -0 -I {} rm -v {}

10. Kama ilivyotajwa awali, unaweza kuelekeza xargs kusoma vipengee kutoka kwa faili badala ya ingizo la kawaida kwa kutumia alama ya -a kama inavyoonyeshwa.

$ xargs -a rss_links.txt

11. Unaweza kuwezesha kitenzi kwa kutumia -t bendera, ambayo huambia xargs kuchapisha mstari wa amri kwenye pato la kawaida la hitilafu kabla ya kuitekeleza.

$ find Downloads -name "DomTerm" -type d -print0 | xargs -0 -t /bin/rm -rf "{}"

12. Kwa chaguo-msingi, xargs hukatiza/kuweka mipaka vipengee kwa kutumia nafasi tupu, unaweza kutumia alama ya -d kuweka kikomo ambacho kinaweza kuwa herufi moja, kutoroka kwa herufi ya mtindo wa C kama vile \n, au msimbo wa kutoroka wa octal au hexadecimal.

Kwa kuongeza, unaweza pia kumwuliza mtumiaji kuhusu kama ataendesha kila mstari wa amri na kusoma mstari kutoka kwa terminal, kwa kutumia alama ya -p kama inavyoonyeshwa (andika y kwa urahisi. ndiyo au n kwa hapana).

$ echo ./Templates/ ./Documents/ | xargs -p -n 1 cp -v ./Downloads/SIC_Template.xlsx 

Kwa habari zaidi, soma ukurasa wa mtu wa xargs.

$ man xargs 

Ni hayo kwa sasa! Xargs ni shirika lenye nguvu la kujenga mstari wa amri; inaweza kukusaidia kupitisha matokeo ya amri moja kama hoja ya amri nyingine ya usindikaji. Katika nakala hii, tumeelezea mifano 12 ya amri ya xargs kwa Kompyuta. Shiriki maoni au maswali yako nasi kupitia fomu ya maoni iliyo hapa chini.