📅  最后修改于: 2023-12-03 15:23:42.562000             🧑  作者: Mango
在 Linux 命令行中,复制文件夹是一个基本的操作,可以通过 Shell-Bash 中的一些命令来实现。在本文中,我们将介绍如何通过命令行复制文件夹,同时提供一些常用的示例和代码片段。
要复制整个文件夹,可以使用 cp
命令,并使用 -r
标志(递归标志)来递归复制所有子目录和文件。以下是使用 cp
命令复制文件夹的示例:
$ cp -r /path/to/source/folder /path/to/destination/folder
上面的命令将把 /path/to/source/folder
中的所有内容复制到 /path/to/destination/folder
中,包括子目录和文件。
有时候,您可能想要复制文件夹,但同时排除其中一些文件。在这种情况下,可以使用 --exclude
标志,并指定要排除的文件名。以下是一个示例:
$ cp -r --exclude='*.txt' /path/to/source/folder /path/to/destination/folder
上述命令将复制来源目录中除了 .txt
文件之外的所有内容。
如果您想要查看每个文件何时复制完成,可以使用 rsync
命令而不是 cp
命令。 rsync
命令提供了一个 -P
选项,该选项会显示每个文件的进度和剩余时间。以下是一个示例:
$ rsync -r -P /path/to/source/folder /path/to/destination/folder
上述命令将递归复制 /path/to/source/folder
到 /path/to/destination/folder
,并显示每个文件的复制进度。
您可以使用 tar
命令将文件夹打包成单个文件,并复制到目标位置。以下是一个示例:
$ tar -czf /path/to/destination/folder.tar.gz /path/to/source/folder
上述命令将压缩并打包 /path/to/source/folder
,然后在 /path/to/destination/folder.tar.gz
中复制打包文件。
要解压缩文件在目标文件夹中,可以使用以下命令:
$ tar -xzf /path/to/destination/folder.tar.gz -C /path/to/destination/folder
这些是在 Linux 命令行中复制文件夹的一些基本方法。除了上述方法之外,还有其他许多命令行工具可用于此目的。熟练使用这些命令,可以使文件管理变得更加方便快捷。