按照目标目录中的符号链接将文件从源目录复制到目标目录

问题描述 投票:0回答:1

我正在尝试将一些文件从一个目录复制到另一个目录并解析目标目录中的所有符号链接。为了更好地说明我的意思,我的源目录如下所示:

source
  |-- dir1
  |     `-- file1
  |-- dir2
  |     `-- file2
  `-- dir3
        `-- file3

目标目录:

dest
  |-- dir1
  |-- dir2 -> dir1
  `-- dir3

我想递归地将文件从

source
复制到
dest
,这样操作后,目标目录如下所示:

dest
  |-- dir1
  |     |-- file1
  |     `-- file2
  |-- dir2 -> dir1
  `-- dir3
        `-- file3

我目前正在尝试使用

cp -R source/. dest/
执行此操作(由于其他原因,我无法使用 shell glob
*
),但它失败并出现错误
cp: target dest/./dir2 is not a directory
。怎样才能达到想要的效果呢?

unix cp
1个回答
0
投票

我建议使用

find
:

cd /path/to/source
find . -type f -exec cp {} /path/to/dest/{} \;
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.