使用 linux 命令行将文件从多个目录复制到另一个目录

Copying files from multiple directories to another directory using linux command line

我有一堆文件在不同的文件夹中,所有文件夹都在一个目录中。

/var/www/folder1/file1.txt
/var/www/folder1/file2.txt
/var/www/folder1/file3.txt

/var/www/folder2/file4.jpg
/var/www/folder2/file5.jpg
/var/www/folder2/file6.jpg

/var/www/folder3/file7.pdf
/var/www/folder3/file8.doc
/var/www/folder3/file9.gif

我需要将 /var/www/ 内的文件夹内的所有内容复制到另一个目录(例如,/var/my-directory/),而不是实际的文件夹。基于上面的示例,我需要 /var/my-directory/` 如下所示:

/var/my-directory/file1.txt
/var/my-directory/file2.txt
/var/my-directory/file3.txt
/var/my-directory/file4.jpg
/var/my-directory/file5.jpg
/var/my-directory/file6.jpg
/var/my-directory/file7.pdf
/var/my-directory/file8.doc
/var/my-directory/file9.gif

我似乎无法弄清楚执行此操作的命令。我试过以下方法:

sudo cp -R /var/www/./. /var/my-directory/

但是,这仍然会复制所有文件夹。

有什么方法可以做我想做的事吗?

使用查找。

find /var/www/ -type f -exec cp '{}' /var/my-directory/  \;

诀窍是 -type f 只选择文件。