我有两个文件夹 a 和 b
a 有文件 file1.txt 和 file2.txt
我想将文件夹中的所有文件复制到 b。
我正在使用命令:
cp -r a\ b\
但是我在 b 中获取文件夹 a,我只想要它只是文件夹 b 中的文件 file1.txt 和 file2.txt,而不是文件夹 a 本身。
答案 0 :(得分:4)
cp
的第一个参数是要复制的文件。您指定了 a
,这就是它复制的内容。要指定 a
中的文件,那就是 a/*
cp a/* b/
(反斜杠作为目录分隔符在 Windows 上模糊有效,但正斜杠绝对更可取,并且可移植到更清晰的平台。)
答案 1 :(得分:1)
这是为rsync
量身定制的问题,请您尝试以下操作。请确保您在存在目录 a
的位置运行此命令,同样当我测试我的 a
和 b
目录是否存在于同一目录中时,或者您可以使用绝对路径在副本中相应地更改路径路径也是。
rsync -avz a/ b/
顺便说一下,这将保留从目录 a
到 b
的文件的权限和时间戳。此外,这将帮助您在稍后的时间点进行增量复制,其中 rsync
足够聪明,可以知道任何文件存在并且从上次没有更改,它不会像 cp
那样再次复制它。< /p>