12 Hagnýt dæmi um Linux Xargs stjórn fyrir byrjendur


Xargs er frábær skipun sem les strauma af gögnum frá venjulegu inntaki, býr síðan til og framkvæmir skipanalínur; sem þýðir að það getur tekið úttak úr skipun og sendir það sem rök fyrir annarri skipun. Ef engin skipun er tilgreind, keyrir xargs echo sjálfgefið. Þú margir líka leiðbeina því að lesa gögn úr skrá í stað stdin.

Það eru nokkrar leiðir sem xargs er gagnlegt í daglegri notkun á skipanalínunni. Í þessari grein munum við útskýra 12 hagnýt Linux xargs skipunardæmi fyrir byrjendur.

1. Fyrsta dæmið sýnir hvernig á að finna allar .png myndirnar og setja þær í geymslu með því að nota tar tólið sem hér segir.

Hér gerir aðgerðaskipunin -print0 kleift að prenta alla skráarslóðina á venjulegu úttakinu, fylgt eftir með núllstaf og -0 xargs fáninn fjallar í raun um pláss í skráarnöfnum.

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

2. Þú getur líka umbreytt muti-línu úttak frá ls skipun í eina línu með því að nota xargs sem hér segir.

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

3. Til að búa til þéttan lista yfir alla Linux notendareikninga á kerfinu skaltu nota eftirfarandi skipun.

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

4. Miðað við að þú hafir lista yfir skrár og þú vilt vita fjölda lína/orða/stafa í hverri skrá á listanum, geturðu notað ls skipunina og xargs í þessum tilgangi sem hér segir.

$ ls *upload* | xargs wc

5. Xarags gerir þér einnig kleift að finna og fjarlægja möppu með endurtekningu, til dæmis mun eftirfarandi skipun fjarlægja DomTerm endurtekið í möppunni Niðurhal.

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

6. Svipað og í fyrri skipuninni geturðu líka fundið allar skrár sem heita net_stats í núverandi möppu og eytt þeim.

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

7. Næst skaltu nota xargs til að afrita skrá yfir í margar möppur í einu; í þessu dæmi erum við að reyna að afrita skrána.

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

8. Þú getur líka notað endurnefna skipanirnar saman til að endurnefna allar skrár eða undirmöppur í tiltekinni möppu í lágstafi sem hér segir.

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

9. Hér er annað gagnlegt notkunardæmi fyrir xargs, það sýnir hvernig á að eyða öllum skrám innan möppu nema einni eða fáum skrám með tiltekinni endingu.

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

10. Eins og áður hefur komið fram geturðu fyrirskipað xargs að lesa hluti úr skrá í stað venjulegs inntaks með því að nota -a fánann eins og sýnt er.

$ xargs -a rss_links.txt

11. Þú getur virkjað orðræðu með því að nota -t fánann, sem segir xargs að prenta skipanalínuna á staðlaða villuúttakið áður en það er keyrt.

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

12. Sjálfgefið er að xargs lýkur/afmarkar hluti með því að nota auða bil, þú getur notað -d fánann til að stilla afmörkunina sem getur verið einn stafur, C-stíl stafafrá eins og , eða átthags- eða sextánskóði.

Að auki geturðu einnig beðið notandann um hvort hann eigi að keyra hverja skipanalínu og lesa línu úr flugstöðinni með því að nota -p fánann eins og sýnt er (sláðu einfaldlega inn y fyrir já eða n fyrir nei).

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

Fyrir frekari upplýsingar, lestu xargs mannasíðuna.

$ man xargs 

Það er það í bili! Xargs er öflugt tól til að byggja upp skipanalínu; það getur hjálpað þér að senda úttak frá einni skipun sem rök fyrir annarri skipun til vinnslu. Í þessari grein höfum við útskýrt 12 hagnýt xargs skipunardæmi fyrir byrjendur. Deildu hugsunum þínum eða spurningum með okkur í gegnum athugasemdaformið hér að neðan.