xargs er en Unix-kommando, som kan bruges til at bygge og udføre kommandoer fra standardinput.
Betydning:
Nogle kommandoer som grep kan acceptere input som parametre, men nogle kommandoer accepterer argumenter, dette er et sted hvor xargs kom ind i billedet.
Syntaks for kommandoen 'xargs' i Linux
xargs [options] [command]>
Tilgængelige indstillinger i kommandoen `xargs` i Linux
| Muligheder | Beskrivelse |
|---|---|
| -0 | input-elementer afsluttes med null-tegn i stedet for hvide mellemrum |
| -en fil | læse elementer fra fil i stedet for standard input |
| –afgrænsning = dividere | input-elementer afsluttes med et specialtegn |
| -E eof-str | sæt slutningen af filstrengen til eof-str |
| -Jeg erstatter-str | erstatte forekomster af replace-str i de indledende argumenter med navne læst fra standardinput |
| -L max-linjer | brug højst max-linjer ikke-blanke inputlinjer pr. kommandolinje. |
| -s | bede brugeren om, hvorvidt den skal køre hver kommandolinje og læse en linje fra terminalen. |
| -r | Hvis standardinputtet ikke indeholder nogen non-blanks, skal du ikke køre kommandoen |
| -x | afslutte, hvis størrelsen overskrides. |
| -Hjælp | udskriv oversigten over muligheder for at xargs og afslutte |
| -version | udskriv versionsnr. af xargs og exit |
Eksempel:

xargs eksempel
Nedenfor er C-programmet, som læser en tekstfil test.txt og derefter bruger output fra dette program som input til touch-kommando. indholdet af tekstfilen 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;> }> |
>
>
Output:
file1 file2 file3 file4>
Brug nu output af ./a.ud som input til berøringskommando

xargs eksempel med berøring
Kommandobrug med muligheder:
xargs --version>
Udskriver versionsnummeret for xargs-kommandoen og afslut derefter.
Output:
streng til boolesk java
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 vil vise indholdet af filen
file1 file2 file3 file4>
xargs -p -a test.txt>
-p option beder om bekræftelse, før du kører hver kommandolinje. Det kører kun kommandolinjen, hvis svaret starter 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>
Lad os nu antage, at filen test.txt er tom, og ovenstående kommando udføres, -r-optionen sikrer, at hvis standardinput er tom, så udføres kommandoen ikke, så ovenstående kommando vil ikke producere noget output, men hvis ovenstående kommando udføres uden -r option, vil det producere en tom linje som output. Se billedet nedenfor som eksempel:

xargs med -r mulighed