📌  相关文章
📜  在 linux 中复制目录 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:07:43.188000             🧑  作者: Mango

在 Linux 中复制目录 - Shell/Bash

在 Linux 中使用 Shell/Bash 命令非常方便地复制目录。下面我们将介绍几个常用的命令。

cp命令复制目录

cp 命令可以复制一个目录及其所有子目录和文件,命令格式如下:

cp -r source_dir/ target_dir/

其中:

  • -r 表示进行递归拷贝,将 source_dir 中的所有子目录和文件也一并复制到 target_dir 中。
  • source_dir 是源目录的路径。
  • target_dir 是目标目录的路径。

例如,我们将 /var/www/html 目录下面的文件和子目录复制到 /backup/html 目录中:

sudo cp -r /var/www/html/ /backup/html/
rsync命令备份目录

rsync 命令是一种强大的实用程序,可用于备份文件和目录。下面是一个简单的命令行示例:

rsync -avz source_dir/ target_dir/

其中:

  • -a 表示递归拷贝并保持文件属性(即文件权限、所有者等)。
  • -v 表示详细输出。
  • -z 表示压缩传输数据,这将提高传输速度。

例如,我们将 /var/www/html 目录下面的文件和子目录备份到 /backup/html 目录中:

sudo rsync -avz /var/www/html/ /backup/html/
tar命令打包目录

另一种备份目录的方法是使用 tar 命令,该命令将所有文件打包成单个归档文件,然后将其移到另一个位置或者进行备份。例如:

tar -czvf target_dir_name.tar.gz source_dir/

其中:

  • -c 表示创建归档文件。
  • -z 表示对归档文件进行压缩,提高归档文件的传输速度。
  • -v 表示显示归档文件的详细过程。
  • -f 表示指定归档文件的名称。

例如,我们将 /var/www/html 目录打包并压缩为 /backup/backup-html.tar.gz 文件:

sudo tar -czvf /backup/backup-html.tar.gz /var/www/html/

以上是在 Linux 中复制目录的三种常用方法。我们可以根据具体情况选择合适的方法进行备份。