linux常用命令-cp

描述

cp 复制文件(或者目录等). 可以使用这个命令复制一个文件到一个指定的目的地, 或者复制任意多个文件到一个目的目录目录.

如果最后一个命令参数为一个已经存在的目录名,cp会将每一个源文件复制到那个目录下(维持原文件名).如果所给的参数只有两个文件名.它把前一个文件复制到后一个文件上.如果最后一个参数不是文件名,目录名,和给出多于两个非选项参数,是 错误的.(因而:如果/b已经存在,那么’cp -r /a /b’会复制/a到/b而成为/b/a. 而复制/a/x到/b而成为/b/a/x.但如果/b事先不存在,它会把/a复制为/b而复制/a/x到/b而成为/b/a/x.但如果/b事先不存在,它会把/a复制为/b 而把/a/x复制为/b/x.)

所创建的文件和/或目录的模式和原始的文件的模式是一样的, 然后用用户umask值修改(除非使用了-p选项),(但在递归方式复制目录时,新建目录会临时地获得他们的最终模式Ored,连同 S_IRWXU(0700),以便进程能够读、写、查找这些新建的目录.

复制文件到其自身时它什么事情都不做(除了可能会生成一条错误信息以外). 当复制到一个现存的不同文件时,系统调用函数open(path,O_WRONLY|O_TRUNC)'打开目的文件.当复制到一个新文件时,系统调用函数`open(path,O_WRONLY|O_CREAT,mode)'创建该文件.如果这操作失败,该文件存在,和给出了-f选项, cp试图先删除该现存文件,如果删除成功则把它当做一个新文件处理.

以上描述内容摘录自man文档

cp命令的语法格式

复制命令:cp
	cp [OPTION]... [-T] SOURCE DEST
	cp [OPTION]... SOURCE... DIRECTORY
	cp [OPTION]... -t DIRECTORY SOURCE...

cp命令使用场景

cp SRC DEST
	SRC是文件:
	如果目标不存在:新建DEST,并将SRC中内容填充至DEST中;
	如果目录存在:
	如果DEST是文件:将SRC中的内容覆盖至DEST中;
		此时建议为cp命令使用-i选项;
	如果DEST是目录:在DEST下新建与原文件同名的文件,并将SRC中内容填充至新文件中;

cp SRC... DEST
	SRC...:多个文件
	DEST必须存在,且为目录,其它情形均会出错;

cp SRC DEST
	SRC是目录:
	此时使用选项:-r
		如果DEST不存在:则创建指定目录,复制SRC目录中所有文件至DEST中;
		如果DEST存在:
		如果DEST是文件:报错
	 	如果DEST是目录:

常用选项

options:

-i:交互式
-r, -R: 递归复制目录及内部的所有内容;
-a: 归档,相当于-dR --preserv=all
-d:--no-dereference --preserv=links
--preserv[=ATTR_LIST]
	mode: 权限
	ownership: 属主属组
	timestamp: 
	links
	xattr
	context
	all
-p: --preserv=mode,ownership,timestamp
-v: --verbose
-f: --force
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值