0
我有一个bash脚本来为我设置工作环境,sym将文件链接到主目录中的相应位置。如果`pwd -P`包含文件夹名称和空格,bash脚本将失败
下面的代码工作时,其绝对路径不包括在他们的名字空间中的任何文件夹:
CURRENTDIR=`pwd -P`
function make_sym_link { ln -s $CURRENTDIR/$1 $HOME/.$1; }
for FILE in janus irbrc gvimrc vimrc.after vimrc.before
do
make_sym_link $FILE
done
我猜它是与该路径是如何不被有空间时可以正确逃脱。
一个例子的工作路径是: User/stuartnelson3/Desktop/dotfiles
虽然我有一个路径是行不通的: User/stuartnelson3/Google\ Drive/dotfiles
(我加了\
)
这是问题?我能做些什么来解决这个问题?
'ln -s a b c'表示'ln -s a b'和命令'c',而不是文件'a b'。所以如果你有空间,你必须逃避它。我认为你的主张是正确的。你可以用'\'''使用'sed'来转义'' –
Bill