Hvis du prøver å overføre utdata fra en Linux-kommando til en annen, kan du få feil der kommandoen mislykkes fordi argumentlisten er for lang.

Heldigvis er det en kommando på Linux-systemer som riktig formaterer argumenter til kommandoer. Det heter xargs og her er hvordan du bruker det.

Hvorfor bruke xargs?

Det xargs gjør er at den mottar standard utdata og formaterer den slik at en annen kommando kan motta den. Mens mange Linux-verktøy kan akseptere standard input, aksepterer noen bare argumenter som input.

Disse kan mislykkes hvis du prøver å omdirigere standardinndata til kommandoen. Noen kommandoer godtar fortsatt bare et visst antall argumenter og xargs tar seg av dette for deg.

Hvordan bruke xargs på Linux

Du kan ringe xargs slik:

xargs [kommando]

xargs holder styr på lengden på argumenter en kommando godtar og formaterer standardinndata for å sende ut en argumentliste som skal leveres til kommandoen. Når den når grensen for en kommandolinje, vil den påkalle kommandoen igjen med de resterende argumentene.

instagram viewer

Bruke xargs i pipelines

xargs' nytte kommer når den brukes i rørledninger. Et konstruert eksempel ville være pipe cat to echo, som er en kommando som bare aksepterer argumenter, ikke standard input.

katt | ekko

Dette vil få ekko til å skrive ut det du skriver på én linje så snart du treffer Ctrl + D.

xargs er mest brukt med find-kommandoen, with finn-kommandoen brukes til å liste filer og xargs brukes til å behandle listen over filer på en eller annen måte.

Finn-kommandosyntaksen er hårete nok, så hvorfor ta med en annen kommando inn i den? Hvis du bruker finne-exec" alternativet, vil den spinne opp en ny prosess hver gang den søker gjennom en fil i katalogen. Å bruke xargs er mer effektivt.

Det kan være lurt å slette filer i en katalog som er eldre enn en bestemt dato, for eksempel 90 dager. For å gjøre dette, bruker du denne rørledningen:

finne. -mtime +90 -print | xargs rm

xargs hjelper Linux-kommandoer med å behandle inndata på riktig måte

Med xargs kan du nå sørge for at kommandoer tar argumenter slik du forventer at de skal. Kombinert med finn, vil det la deg behandle filer på maskinen din raskt.

Evnen til å omdirigere input og output i skallet er en av de vedvarende styrkene til Linux som en utvekst av Unix-filosofien. Hvis du vil lære mer om hvordan Linux input/output omdirigering fungerer, les videre.

Forstå standard I/O på Linux

Forbedre Linux-kommandolinjearbeidsflyten ved å koble sammen flere kommandoer ved å bruke standard I/O.

Les Neste

DelekvitringE-post
Relaterte temaer
  • Linux
  • Linux-kommandoer
  • Linux Bash Shell
Om forfatteren
David Delony (81 artikler publisert)

David er en frilansskribent basert i Pacific Northwest, men opprinnelig fra Bay Area. Han har vært en teknologientusiast siden barndommen. Davids interesser inkluderer lesing, se kvalitets-TV-serier og filmer, retrospilling og plateinnsamling.

Mer fra David Delony

Abonner på vårt nyhetsbrev

Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Klikk her for å abonnere