スクリプトでカスタム変数を使用する問題

スクリプトでカスタム変数を使用する問題

myscript以下は、コマンドを実行するために作成した簡単なスクリプトです。

dcmpath='$HOME/Data'
dcmfile='IM1'
dcm2nii $dcmpath/$dcmfile

残念ながら、bashは古いパスを認識しないため、dcm2niiファイルの最後のコマンドを実行できません。誰でも私が欠けている部分を教えてくれればとても感謝します。コマンドパラメータのパスとファイル名をカスタマイズする最良の方法は何ですか?

答え1

dcmpath="$HOME/Data"
dcmfile="IM1"
dcm2nii "$dcmpath/$dcmfile"

最初の行では、一重引用符の代わりに二重引用符を使用する必要があります。一重引用符は、変数が$HOME文字通り解釈されるのを防ぎます。詳細については、bashのマニュアルを参照してください。http://www.gnu.org/software/bash/manual/bashref.html#Quoting

2行目は重要ではありません。一重引用符または二重引用符はすべてうまく機能します。

変数にスペースが含まれている場合は、最後の行のパラメータを二重引用符で囲むのも良い方法です。

関連情報