1. cp 命令说明
cp 命令用来复制文件或者目录,是Linux系统中常用的命令之一。参数如下:
-a, --archive 等于-dR --preserve=all;
--backup[=CONTROL 为每个已存在的目标文件创建备份;
-b 类似--backup 但不接受参数;
--copy-contents 在递归处理是复制特殊文件内容;
-d 等于--no-dereference --preserve=links;
-f, --force 如果目标文件无法打开则将其移除并重试
(当 -n选项存在时则不需再选此项);
-i, --interactive 覆盖前询问(使前面的 -n 选项失效);
-H 跟随源文件中的命令行符号链接;
-l, --link 链接文件而不复制;
-L, --dereference 总是跟随符号链接;
-n, --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失
效);
-P, --no-dereference 不跟随源文件中的符号链接;
-p 等于--preserve=模式,所有权,时间戳;
--preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳),
如果可能保持附加属性:环境、链接、xattr 等;
-c 类似 --preserve=context;
--sno-preserve=属性列表 不保留指定的文件属性;
--parents 复制前在目标目录创建来源文件路径中的所有目录;
-R, -r, --recursive 递归复制目录及其子目录内的所有内容。
***更多命令使用:cp --help 查看***
2. cp 语法
cp [选项] [-T] 源文件 目标文件
或:cp [选项] 源文件 目录
或:cp [选项] -t 目录 源文件
将源文件复制至目标文件,或将多个源文件复制至目标目录。
长选项必须使用的参数对于短选项时也是必需使用的。
3. cp 命令示例
3.1 复制单个文件
cp 源文件 目标文件/目录/目录下的目标文件
cp 1.log 1_bak.log
cp 1.log bbb/
cp 1.log bbb/2.log
3.2 复制多个文件
需要复制的多个文件用空格隔开,也可以使用通配符
cp 1_bak.log 1.log ccc/
cp *.log ddd/
3.3 -r(复制目录)
cp -r bbb/ eee
3.4 -i(覆盖提示)
bbb 目录下已有 1.log,所以加了 -i 后,会提示是否覆盖,y 覆盖、n 不覆盖
cp -i 1.log bbb/
3.5 -f(强制覆盖)
不管目标文件是否存在,-f 都会强制覆盖,且没有提示
cp -f 1.log bbb/
4. 总结
在做运维时,备份,是很重要的步骤。在操作某些重要文件或者目录时,使用 cp 命令进行复制,防止出现意外。