这里的代码从一个shell脚本的一个片段我已经写:为什么'cp'在这个shell脚本中失败?
for src in $(find . -type f -maxdepth 1 \! -name ${deploy} \! -name gvimrc)
do
src=$(basename ${src})
dest="~/.${src}"
copy="${src} -> ${dest}"
cp $src $dest && echo -e "${ok} ${copy}" || echo -e "${fail} ${copy}"
done
出于某种原因,cp
未能执行。例如,在案件中$src='bashrc'
,我得到这个错误:
cp: ~/.bashrc: No such file or directory
我不明白为什么会这样,不过,因为很明显,~/.bashrc
是目的地,没有来源,因此cp
不该不在乎它是否存在。究竟发生了什么问题?
考虑使用 'EVAL' - 如:EVAL CP“$ src“”$ dest“...这应该确保发生shell扩展。 – 2009-01-05 18:34:32