パイプで渡したデータを1行づつ次のコマンドに渡したいけど…(xargs 使え、ということ)

うまい方法はなさげ。
とりあえずこうすればできるけど、美しくないなぁ。

$ cat hoge | while read s; do nantoka ${s}; done


ふと思い直して man xargs したらちゃんとあった。

$ cat hoge | xargs -J % nantoka %

J オプション(replacement) で指定した最初の文字を文字列に展開してくれるとのこと。
すっきりした。