2013-03-16 84 views
1

所以我有一个表示路径的字符串:执行前向字符串添加引号?

string="/Volumes/Media/James Blake - Digital Lion [V0] 2013" 

我想执行:

cd $string 

#do some work.. 

这不会起作用,因为该目录中有空格和括号中的bash不喜欢。

所以,我首先想到的是要改变字符串到:

/Volumes/Media/James\ Blake\ -\ Digital\ Lion\ \[V0\]\ 2013/ 

然而,在终端简单地做:

cd "/Volumes/Media/Transmission/Finished/James Blake - Digital Lion [V0] 2013" works just fine. 

所以我想是有办法的报价增加的每一端字符串,并用引号实际执行该命令?

回答

3

cd "$string"

始终用引号括变量(除非有很好的理由不),因为它可以帮助你避免这个确切的情况。