在 Linux 中复制文件或目录,最常用的是 cp 命令。下面按常见场景给你说明。
cp 源文件 .
示例:
cp test.txt .
cp 源文件 新文件名
示例:
cp test.txt test_backup.txt
cp 源文件 目标目录
示例:
cp test.txt /home/user/docs/
⚠️ 复制目录必须加 -r(递归)
cp -r 源目录 目标目录
示例:
cp -r mydir /home/user/backup/
| 参数 | 作用 |
|---|---|
-r |
递归复制目录 |
-i |
覆盖前询问 |
-f |
强制覆盖 |
-v |
显示复制过程 |
-p |
保留权限、时间等属性 |
-a |
归档模式(常用作备份) |
cp -iv test.txt /tmp/
cp -a mydir /backup/
cp file1 file2 file3 目标目录
示例:
cp a.txt b.txt c.txt /tmp/
cp *.txt /tmp/
scpscp 文件 user@ip:/远程路径/
示例:
scp test.txt root@192.168.1.10:/root/
复制目录:
scp -r mydir root@192.168.1.10:/root/
❌ 复制目录时忘记 -r
cp dir1 dir2 # 错误
✅ 正确:
cp -r dir1 dir2
如果你有具体场景(比如:覆盖提示、保留权限、复制大文件、Docker 容器里复制),可以告诉我,我可以给你更精确的命令。