在 Linux 中递归复制文件

Yahya Irmak 2022年5月11日
在 Linux 中递归复制文件

Linux 终端是一种简单快捷的复制文件和目录的方法。在本文中,我们将解释如何在 Linux 中使用 cp 命令复制文件。

我们还将使用通配符*来复制具有相似名称的文件并递归复制多个文件和目录。

我们将在整篇文章中使用的示例文件和目录如下。

文件和目录结构

在 Linux 中使用 cp 命令复制文件

cp 命令之后,键入要复制的文件源和目标文件或目录。在目录名之后使用斜杠/是可选的。

cp Folder/file1.txt Folder3/

使用 cp 复制文件

在 Linux 中使用通配符 * 复制具有相似文件名的文件

星号*被称为 wildcard,它将每个以指定名称开头的文件作为 cp 命令的参数。

我们想要复制所有名为 file1 的文件,即使扩展名不同。我们使用通配符而不是在文件名末尾指定扩展名。

cp Folder/file1.* Folder3/

对相似文件名使用通配符

在 Linux 中使用通配符 * 复制具有相同扩展名的文件

这一次,我们要复制所有具有相同扩展名的文件,即使它们的名称不同。我们使用通配符代替文件名,然后编写扩展名。

cp Folder/*.txt Folder3/

对同一扩展名使用通配符

在 Linux 中使用 -r 标志递归复制文件

-r-R 标志允许你以递归方式复制目录及其内容。在 cp -r 命令和目标目录之后键入要复制的目录名称。

我们也可以使用 -a 标志。它的功能类似于 -r 标志,但它复制文件而不更改其元数据,例如创建日期。

cp -r Folder/ Folder3/

使用 -r 进行递归复制

在 Linux 中使用 find 命令递归复制文件

我们可以使用 find 命令从目录及其子目录中递归查找和复制具有相似扩展名或文件名的文件。find 命令与 exec 一起使用。

find Folder/ -name '*.txt' -exec cp -r {} Folder3 \;

将 find 与 exec 一起使用

Author: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

相关文章 - Linux File