在脚本中使用用户定义变量的问题

在脚本中使用用户定义变量的问题

以下是一个名为 的简单脚本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

第二行并不重要;单引号或双引号都可以正常工作。

(双)引用最后一行中的参数也是个好主意,以防变量包含空格。

相关内容