![Unix shell 脚本-cp -R 不会复制符号链接后面的内容](https://linux22.com/image/1338731/Unix%20shell%20%E8%84%9A%E6%9C%AC-cp%20-R%20%E4%B8%8D%E4%BC%9A%E5%A4%8D%E5%88%B6%E7%AC%A6%E5%8F%B7%E9%93%BE%E6%8E%A5%E5%90%8E%E9%9D%A2%E7%9A%84%E5%86%85%E5%AE%B9.png)
我找到了一个./image
文件夹,里面全是指向“真实”文件夹的符号链接。这些“真实”文件夹包含一系列图像。
./image/stones -> somefolder/stones
./images/grass -> someotherfolder/grass
(etc.)
我尝试运行一个脚本,从文件夹中复制这些文件夹的内容./image
。
mkdir ../SCALE50
for dir in *; do
echo $dir
cp -R $dir/ ../SCALE50/$dir
done
命令行报告的问题是
arch/*: Not a directory
我几乎没有使用命令行的经验,但我知道我应该说“跟随每个符号链接并将该文件夹的内容复制到指定位置”。
在谷歌中找不到如何表达这一点。谢谢你的帮助!
答案1
rsync
是您所需要的,查看参数,您想要-r
递归并--copy-links
复制目标文件/目录而不是链接。