tee

あるコマンドの出力をパイプを使って他のコマンドに渡したいが、画面にも表示したい、という場合、tee を使う。

http://x68000.q-e-d.net/~68user/unix/pickup?tee

teeというコマンドがあるのは知ってましたが、何をするコマンドか知りませんでした。

果てしなく膨大な数のファイルの中に、ある文字列がいくつくらい含まれるかを調べる必要がありました。

ファイルにリダイレクトすれば済むんですが、途中経過の様子も知りたいという時に、無理矢理下のようにしました。

$ grep -r 'search-string' dir > log &
$ tail -f log

でも、これだとgrepが終わったことを検知できないです。

tee を使えば、こうなるようです。

$ grep -r 'search-string' dir | tee log

grepが終われば、プロンプトが戻ってくるのでわかります。

teeの場合、検索中は標準出力を占領しつづけるので、場合によって使い分けが必要のようです。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください