复制文件夹的linux命令行
复制文件夹的linux命令行详细介绍
在 Linux 中,复制文件夹可以使用 cp 命令,但需要添加递归选项以处理文件夹内的所有内容。以下是常用的命令格式和示例:
基本语法
bash
源文件夹路径 目标文件夹路径
-r(或-R):递归复制整个文件夹及其内容(必须添加,否则会报错)。
常用选项
| 选项 | 说明 |
|---|---|
-p |
保留文件的权限、时间戳等属性。 |
-v |
显示复制过程的详细信息(verbose,冗长模式)。 |
-n |
不覆盖已存在的目标文件(若目标文件存在,跳过复制)。 |
-u |
仅当源文件比目标文件新,或目标文件不存在时才复制(更新式复制)。 |
--suffix |
为冲突的目标文件添加后缀(例如 --suffix=.bak,需配合 -n 使用)。 |
示例
- 复制整个文件夹
将/home/user/source文件夹复制到/home/user/destination:
bash/home/user/source /home/user/destination - 保留文件属性并显示详细过程
bash/home/user/source /home/user/destination - 仅更新目标文件夹中不存在或较旧的文件
bash/home/user/source /home/user/destination - 复制到当前目录并改名
将../old_folder复制到当前目录并命名为new_folder:
bash/old_folder ./new_folder
注意事项
- 如果目标路径是一个已存在的文件夹,复制的内容会被放入该文件夹内;
- 如果目标路径不存在,会创建一个同名的文件夹并将内容复制进去;
- 对权限不足的文件,需使用
sudo提升权限(如sudo cp -r ...)。
通过以上命令,你可以灵活地复制文件夹及其内容,并根据需求保留文件属性或优化复制过程。