こんにちは。
コマンドの標準出力のファイルへの追加書き込みを並列実行したいと思いました(xargs
利用)。しかしばらばらのタイミングで追加書き込みされてしまい悩みました。
そこで、そのコマンド(下記例のCOMMAND
)の標準出力は必ず 1MB 以下と仮定し、対象ファイル(下記例のOUT.TXT
)への追加書き込みは、一旦 dd
コマンドへ蓄えたものをまとめて行うすることにしました。動かしてみて問題なさそうですが、この方法の自信はありません。
$ find ... | xargs -P 8 -I % sh -c 'COMMAND % | dd obs=1m >> OUT.TXT 2> /dev/null'