Bashを使用して、次のように/ dev / urandomから文字列をgrepしようとしています。
tr -cd '[:lower:]' < /dev/urandom | grep -o 'test'
また試しました:
tr -cd '[:lower:]' < /dev/urandom | grep -o 'test' | head -1
出力がファイルにリダイレクトされても、ファイルに何も書き込まれていないかのようにgrep
待機が常に実行されるようです。tr
> /tmp/testfile
head
ただし、以前に解析すると機能grep
します。
tr -cd '[:lower:]' < /dev/urandom | head -c 10000 | grep -o 'test'
stdinの実行中に動作させる方法はありますか?そうでなければ、grep
入力がまだ完了していない状態で出力を提供しない動作はなぜ起こりますか?