xargs
xargs
je standardní příkaz v operačních systémech un*xového typu. Je užitečný, když je potřeba předat programu velké množství parametrů.
Do verze linuxového jádra 2.6.23 nebylo možné poslat příkazům libovolně dlouhou příkazovou řádku, proto xargs
rozděloval předané informace do dostatečně malých příkazů.[zdroj?!]
Funkce
Příkaz načítá na standardním vstupu seznam parametrů, které pak předá svému argumentu.
Příklad použití příkazu xargs:
$ find ~/scriptz/ -type f -name "*.bak" | xargs rm
Tento příkaz vymaže v uvedeném adresáři všechny soubory, které mají příponu .bak
.
Volba -n
nebo -L
(bere (neprázdné) řádky jako celek) omezuje počet argumentů, např.:
$ seq 10 | xargs -n 3 echo 1 2 3 4 5 6 7 8 9 10
$ cat > soubor a b c d e f ^D $ cat soubor | xargs -n 2 echo a b c d e f $ cat soubor | xargs -L 2 echo a b c d e f
Volba -I
umožňuje „pojmenovat“ argument (v takovém případě se bere vždy po jednom), což se hodí, pokud je použit nikoliv na konci příkazu, např.:
$ seq 3 | xargs -I {} echo {}. test 1. test 2. test 3. test
Volba -t
napřed vždy vypíše (na stderr) zkonstruovaný příkaz.
Odkazy
Externí odkazy
- xargs – construct argument lists and invoke utility — The Open Group Base Specifications Issue 8, IEEE Std 1003.1-2024 (anglicky)
Související články
- Parallel