teeコマンドまとめ

ショコラ
ショコラ

teeコマンドまとめ

「tee」コマンドまとめでキメマス。

もっさん先輩
もっさん先輩

①grep した結果を保存する。

通常。grep の結果は画面に表示されます。

grep -r mossan

grep の後に「| tee mossan.txt」を付けると、画面に表示され、ファイルにも保存されます。

grep -r mossan | tee mossan.txt

②teeコマンドでファイルと画面に出力する。

通常。echo の出力を out.txtファイルに保存します。

echo 'Hello Answorz!' > out.txt

echo の「>」を「| tee out.xt」に付け替えると、echo の出力を out.txtファイルに保存し、画面にも表示できます。

echo 'Hello Answorz!' | tee out.txt
$ echo 'Hello Answorz!' | tee out.txt
Hello Answorz!

③teeコマンドで複数のファイルに保存する。

通常。echo の出力を out.txtファイルに保存します。

echo 'Hello Answorz!' > out.txt

他のファイルにもコピーしたい場合に「>」を「| tee」を付け替えると、他のファイルにも保存できます。

echo 'Hello Answorz!' | tee out1.txt out2.txt out3.txt

因みに、追記するには「-a」オプションを使います。

echo 'Hello Answorz!' | tee -a out1.txt out2.txt out3.txt

④sudo echo で「許可がありません」になる場合

sudo echo で ファイルに書き込もうとすると「許可がありません」のエラーが表示されてしまう。「echo」は sudo で動作するが、リダイレクトには sudo が効かないのが原因です。

sudo echo 1 > /proc/sys/net/ipv4/ip_forward
-bash: /proc/sys/net/ipv4/ip_forward: 許可がありません

その場合、tee を使って対応することができます。

echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward > /dev/null
Scroll to Top