在Linux中使用空格设置环境变量

在Linux中使用空格设置环境变量,linux,environment-variables,Linux,Environment Variables,我想设置一个有空间的环境变量。 它是文件夹的路径,文件夹名称为: /home/mehrabib/我的视频 我编辑.bashrc并向其中添加以下行: export $VIDEO=/home/mehrabib/my\ video 并运行以下命令: echo $VIDEO cd $VIDEO echo $VIDEO cd $VIDEO 结果是: /home/mehrabib/my video /home/mehrabib/my :no such file or directory /home/

我想设置一个有空间的环境变量。 它是文件夹的路径,文件夹名称为: /home/mehrabib/我的视频

我编辑.bashrc并向其中添加以下行:

export $VIDEO=/home/mehrabib/my\ video
并运行以下命令:

echo $VIDEO
cd $VIDEO
echo $VIDEO
cd $VIDEO
结果是:

/home/mehrabib/my video
/home/mehrabib/my :no such file or directory
/home/mehrabib/my\ video
/home/mehrabib/my\ :no such file or directory
我把它改成

export $VIDEO=/home/mehrabib/my\\\ video
并运行以下命令:

echo $VIDEO
cd $VIDEO
echo $VIDEO
cd $VIDEO
结果是:

/home/mehrabib/my video
/home/mehrabib/my :no such file or directory
/home/mehrabib/my\ video
/home/mehrabib/my\ :no such file or directory

我该怎么办?

试着引用
视频
cd“$VIDEO”
你该怎么办

export VIDEO="/home/mehrabib/my video"
和总结丹的评论也一样

cd "$VIDEO"
这将扩展到

cd "/home/mehrabib/my video"
再说一遍


就个人而言,我更喜欢
${VIDEO}
语法。

您也可以替换特殊字符-使用*作为通配符来替换空格


VIDEO=“/home/mehrabib/m*o”

将其用引号括起来,如
VAR=“/home/mehrabib/my VIDEO”
并对
export VIDEO=“/home/mehrabib/my VIDEO”
执行相同的操作,当
cd
插入目录时需要
$
cd“VIDEO”
将不起作用……除非您有另一个以“m”开头并以“o”结尾的目录;比如“mono”:)我在MacOSX上遇到了这个问题,对我来说引号不起作用,而*符号起作用。