插件窝 干货文章 linux中的复制命令是什么

linux中的复制命令是什么

复制 文件 递归 目录 114    来源:    2025-04-14

在 Linux 中,复制文件和目录的常用命令是 cp(全称 copy)。以下是详细用法和示例:


基本语法

cp [选项] 源文件 目标路径

常用场景示例

1. 复制文件到目标目录

cp file.txt /home/user/documents/

将当前目录下的 file.txt 复制到 /home/user/documents/ 目录。

2. 复制文件并重命名

cp file.txt backup_file.txt

复制 file.txt 到当前目录并命名为 backup_file.txt

3. 复制目录(需 -r 递归选项)

cp -r my_folder /backup/

递归复制 my_folder 目录及其所有内容到 /backup/


常用选项

选项 作用
-r-R 递归复制目录(必需)
-i 覆盖前提示确认(交互模式)
-v 显示复制过程(详细信息)
-u 仅复制源中更新或缺失的文件(增量备份)
-p 保留文件属性(权限、时间戳等)
-a 归档模式(相当于 -rp,保留所有属性)

高级用法

1. 保留文件属性复制(适合备份)

cp -a /source/folder /backup/

2. 仅复制更新过的文件(增量复制)

cp -u *.log /backup/logs/

3. 交互式复制(避免覆盖)

cp -i important.txt /backup/

注意事项

  1. 覆盖风险:默认情况下 cp 会静默覆盖目标文件,建议重要操作前加 -i 或备份数据。
  2. 符号链接:默认复制链接本身(非指向的文件),如需复制实际文件,用 -L 选项。
  3. 通配符:支持 *? 匹配多个文件(如 cp *.txt /backup/)。

替代工具

  • rsync:更强大的远程/增量同步工具(保留权限、压缩传输等)。
  • install:复制文件并设置权限(常用于脚本安装)。

如果需要进一步帮助(如特定场景或错误处理),可以补充说明!