在练习使用 标签, 将数据依次放入循环中执行.
while read files
do
cp $files ~/prob
done <<-EOF
~/.vimperatorrc
~/.vimrc
EOF
上面这个代码得到了错误信息是:
cp: cannot stat `~/.vimperatorrc': No such file or directory
cp: cannot stat `~/.vimrc': No such file or directory
但是这两个文件确实存在, 是我哪里写错了?
问一个 bash 的小问题
- cheneymx
- 帖子: 159
- 注册时间: 2007-03-13 4:59
- 来自: Erlangen
- cheneymx
- 帖子: 159
- 注册时间: 2007-03-13 4:59
- 来自: Erlangen
楼上正解, 非常感谢!
aerofox 写了:没有多 - 号,那个符号是用来去掉前导空格的。
我想原因可能是:~ 号是被 shell 解决并扩展的,而且如果我没记错的话,shell 不会扩展变量值中的 ~ 号。所以给 cp 命令的第一个参数就是原原本本的以 ~ 开头的参数,而 cp 并不把 ~ 当作一个特殊字符。改一下试试:代码: 全选
cd while read files do cp $files prob done <<-EOF .vimperatorrc .vimrc EOF cd -
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙