シェルスクリプト teeコマンドでエラーが出る場合の原因。
2013年05月22日 14時06分23秒
こんにちは、コブラです。
シェルスクリプトでteeコマンドを使用した際、
こんなエラーが出ました。
tee: hoge.log:そのようなファイルやディレクトリはありません
原因としてもっとも考えられるのが単純なファイルパスの誤りです。
”え?ファイルはちゃんと存在するけど?”と思った方!
ありがちなのが「cd」コマンドです。
シェルスクリプトの処理中にカレントディレクトリを移動したりすると、
相対パスで指定したファイルが見つからなくなったりします。
FILENM="./hoge.log" # 実際は/rootにある cd "/home" echo "hogehoge." | tee -a FILENM
これではファイルが見つかりませんね。
FILENM="/hoge.log" # 実際は/rootにある cd "/home" echo "hogehoge." | tee -a FILENM
ファイルパスは出来るだけ絶対パスを指定するのがよさそうですね。
最近のコメント