grepを使用してcdrecord / wodimの出力を解析したいと思います。cdrecord -v
次のような行を出力します
Track 01: 49 of 75 MB written (fifo 100%) [buf 100%] 10.2x.
問題は、cdrecordが同じ行に進行状況を表示するためにキャリッジリターン(CR
、\r
)を使用することです。
tr '\r' '\n'
cdrecord呼び出しに追加しようとしましたが、これは一般的に機能しますが、出力が1行ずつ表示されません。代わりに、テキストの大きなチャンクが解析されて表示されます。
cdrecord -v ... | tr '\r' '\n' | grep -i written
これはcdrecord、tr、またはgrepによるものですか?出力を1行ずつ取得するために、強制的にフラッシュする方法はありますか?
助けていただければ幸いです。
の出力tr
はバッファリングされます。を使用stdbuf -o0
しtr
て、STDOUTをバッファなしにすることができます。
cdrecord -v ... | stdbuf -o0 tr '\r' '\n' | grep -i written
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加