以下を使用して、標準出力にファイルの内容を表示します。#!/bin/bash
#!/bin/bash
echo"hello" >> ~/Hello
cat ~/Hello
tee ~/Hello
標準出力でHelloファイルの内容を表示するために使用する必要がありますか?
答え1
いいえ、tee
ファイルの内容を表示するためのものではありません。ほとんどの* nixコマンドと同様に、コマンドを実行してマニュアルを表示できますman tee
。そこから以下を見ることができます:
NAME
tee - read from standard input and write to standard output and files
DESCRIPTION
Copy standard input to each FILE, and also to standard output.
だからtee
ファイルを書くために。最も一般的な使用法は、画面にテキストを表示してファイルに保存することです。たとえば、
echo "foo" | tee ~/bar
上記のコマンドはfoo
画面(標準出力)に印刷してファイルに保存します~/bar
。
ファイルの内容を表示したい場合、標準的なアプローチはまさに次のようになります。cat file
したがって、cat ~/Hello
ファイルの内容が表示されます~/Hello
。
ところで、スクリプトにタイプミスがあります。あなたはそれをしたいですかecho "hello"
、それとも望んでいませんかecho"hello"
?