xargs är ett Unix-kommando som kan användas för att bygga och utföra kommandon från standardinmatning.
Betydelse:
Vissa kommandon som grep kan acceptera inmatning som parametrar, men vissa kommandon accepterar argument, detta är en plats där xargs kom in i bilden.
Syntax för kommandot 'xargs' i Linux
xargs [options] [command]>
Alternativ tillgängliga i kommandot `xargs` i Linux
| alternativ | Beskrivning |
|---|---|
| -0 | indataobjekt avslutas med nolltecken istället för blanksteg |
| -en fil | läs objekt från filen istället för standardinmatning |
| –avgränsare = dividera | inmatningsobjekt avslutas med ett specialtecken |
| -E eof-str | ställ in slutet av filsträngen till eof-str |
| -Jag ersätter-str | ersätt förekomster av replace-str i de initiala argumenten med namn som läses från standardinmatning |
| -L max-linjer | använd högst max-rader som inte är tomma inmatningsrader per kommandorad. |
| -s | fråga användaren om att köra varje kommandorad och läsa en rad från terminalen. |
| -r | Om standardinmatningen inte innehåller några icke-blanks, kör inte kommandot |
| -x | avsluta om storleken överskrids. |
| -hjälp | skriv ut sammanfattningen av alternativ för att xargs och avsluta |
| -version | skriv ut versionsnr. av xargs och avsluta |
Exempel:

xargs exempel
Nedan är C-programmet, som läser en textfil test.txt och sedan använder utdata från detta program som input till touch-kommando. innehållet i textfilen test.txt
file1 file2 file3 file4>
C
// C program to read contents of file> #include> // Driver Code> int> main(){> >int> c;> >FILE> *file;> >// open file test.txt> >file =>fopen>('test.txt', 'r');> >if> (file) {> >// read file line-by-line until> >// end of file> >while> ((c =>getc>(file)) != EOF)> >putchar>(c);> >fclose>(file);> >}> >return> 0;> }> |
>
>
Utgång:
file1 file2 file3 file4>
Använd nu output av ./a.ut som ingång till beröringskommando

xargs exempel med beröring
Kommandoanvändning med alternativ:
xargs --version>
Skriver ut versionsnumret för xargs-kommandot och avsluta sedan.
Utgång:
iPhone emojis på Android
xargs (GNU findutils) 4.7.0-git Copyright (C) 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.>
xargs -a test.txt>
Det kommer att visa innehållet i filen
file1 file2 file3 file4>
xargs -p -a test.txt>
-p-alternativet frågar efter bekräftelse innan varje kommandorad körs. Den kör bara kommandoraden om svaret börjar med 'y' eller 'Y' Output:
# xargs -p -a test.txt echo file1 file2 file3 file4 ?...y file1 file2 file3 file4 # xargs -p -a test.txt echo file1 file2 file3 file4 ?...n>
xargs -r -a test.txt>
Låt oss nu anta att filen test.txt är tom och kommandot ovan exekveras, -r alternativet säkerställer att om standardinmatningen är tom, så exekveras inte kommandot, så kommandot ovan kommer inte att producera någon utdata, men om ovanstående kommando exekveras utan -r-alternativet kommer det att producera en tom rad som utdata. Se bilden nedan som exempel:

xargs med -r-alternativet