標準入力に与えられた文字列の空白、改行を区切りにコマンドに入力したい
xargsというコマンドを用いる。
例えば
grep -lを用いて、abcという語が含まれているファイル名のみを表示する。
grep -l 'abc' *.txtこれの標準出力が
a.txt b.txt c.txtだったとして、これらをまとめてあるコマンドに渡したい時、
grep -l 'abc' *.txt|xargs コマンドのようにxargsを通して、コマンドに与えることができる。すなわち、
コマンド a.txtコマンド b.txtコマンド c.txtをいっぺんに行なうことができる。
また、例えば、あるファイルhogeにファイル名を書いておいて、
a.txt
b.txt
c.txt
これを
xargs コマンド < hoge
のようにすることもできる。このように空白か改行で区切られた単語を一つ一つコマンドに与えてくれるという便利なコマンドである。