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.
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.
Forbedre Linux-kommandolinjearbeidsflyten ved å koble sammen flere kommandoer ved å bruke standard I/O.
Les Neste
- Linux
- Linux-kommandoer
- Linux Bash Shell

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.
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