2011-01-26 15 views
4

ファイル名変数に出力するデータをテストする非常に簡単なプログラムを書きました。シェルスクリプトのファイル名変数に出力するときのエラー

私はこのスクリプトを実行すると、私は次のようなエラーに

"./script.shそのようなファイルやディレクトリはありません:3行目:〜/出力" だ

#!/bin/sh 
file="~/output" 
echo "test" > $file 

それでは、どのように私がすべき

をそれを動作させるために私のコードを修正しますか?それとも、シェルスクリプトでサポートされていないのですか?

答えて

5

「〜/出力」の前後に引用符あなたの悲しみを引き起こしています。 [OK]を作品

例えば

#!/bin/sh 
file=~/output 
echo "test" > $file 
。何が起こっているかを確認するに

、〜をホームディレクトリ用のシェル拡張であることを念頭に置いて

$ file=~/output 
$ echo $file 

とクマ対

$ file="~/output" 
$ echo $file 

を試してみてください。

1

代わりに、スクリプトでの$ HOME環境変数を使用することができます。

#!/bin/sh 
file="$HOME/output" 
echo "test" > $file 
関連する問題