假设我有以下路径:
/home/$USER/Downloads/My Folder
我尝试将上面给出的文件路径分配给一个变量FILE_NAME
,如下所示,
FILE_NAME=/home/$USER/Downloads/My Folder
$FILE_NAME
输出为:
bash: /home/$USER/Downloads/My :No such file or directory
如何解决这个问题?
答案1
如果路径包含空格字符,则必须使用引号:
FILE_NAME="/home/$USER/Downloads/My Folder"
答案2
问题在于名称中嵌入了空格。解决此问题的最简单方法是用引号括住完整路径字符串(即,您FILE_NAME="/home/${USER}/Downloads/My Folder"
之所以使用,"
是因为您使用了需要替换的 $USER,而'
使用 则不会发生这种情况。
第二个问题是您将如何使用该变量。在您的示例中...我假设您从命令中删除了 cd,但是...要使用该变量...您可能还应该在其使用周围使用 "
所以......我猜测你的用途是...... cd“$FILE_NAME”