xargsで複数のコマンドを実行する
xargsで受け取った引数をもとにコマンドを複数実行したい場合、シェルスクリプトを作って云々をやっていたが、shコマンドで簡単にできることが分かった。
ls コマンドから受け取ったディレクトリに入ってlsをして元のディレクトリに戻る、というのをやってみる。
(各ディレクトリにはそれぞれ1.txt、2.txt、3.txtが入っている)
$ ls -1 | xargs -I{} sh -c 'cd {}; ls; cd ../'
1.txt
2.txt
3.txt
こんな感じでcdで中に入ってlsして戻る、ということをしている。
以上。