您的位置:首页 > 运维架构 > Linux

linux cp命令应用

2016-12-31 21:32 197 查看


cp命令:copy

源文件:目录文件
单源复制: cp [OPTION]... [-T] SOURCE DEST
如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中


列如: 把dir1目录file1文件复制到dir2目录上,dir2目录没有文件,当把dir1目录file1复制成dir2目录file2文件时,因为没有file2文件,所以先创建file2文件,再把数据复制到file2文件里



如果DEST存在:如果DEST是非目录文件:则覆盖目标文件
列如: 把dir1目录file1文件内容复制到dir2目录上的file2文件里,因为dir2目录上有file2文件,所以直接把file2的内容覆盖掉,变成file1文件的内容




如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流
列如:dir2目录现在只有file2文件,当把dir1目录file1文件复制到dir2目录时,再看dir2目录有个file1文件




多源复制   cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...


命令解释: cp 是命令 ,OPTION 是cp命令选项,后面有三点代表可以有多个选项, SOURCE是源文件,也是可以有多个, DIRECTORY 是目标,可以是文件也可以是目录,只能有一个目标
如果DEST不存在:错误
列如:dir1目录分别有两个文件,file1和file2,现在把dir1两个文件同时负责到dir4目录上,dir4目录是不存在的,所以我们操作时提示错误



 
如果DEST存在: 
如果DEST是非目录文件:错误 
列如:把dir1上的file1和file2复制到file3文件,因为目标file3是文件,所有操作时提示错误



如果DEST是目录文件: 分别复制每个文件至目标目录中,并保持原名
列如:把dir1目录file1和file2文件复制到dir2目录上,dir目录开始是没有文件的,当复制完后再用ls命令看,dir2目录已经有file1和file2文件了
命令解释: cp /tmp/dir1/{file1,file2} /tmp/dir2
/tmp/dir1{file1,file2} 是两个文件,代表/tmp/dir1目录下的file1和file2文件, /tmp/dir2是目标目录,要把源文件复制到所在目录




常用选项:
-i: 交互式复制,即覆盖之前提醒用户确认



 
-f: 强制覆盖目标文件,即不提示直接复制,有时候系统默认有别名 cp=cp i 这时候要把别名取消才能强制复制,
-r: 递归复制目录



 
-d: 复制符号链接文件本身,而非其指向的源文件 


 
-a: 用于实现归档:所有属性都会被复制过去,和--preserv=all一样效果 
--preserv= 
mode: 权限 


 
ownership: 属主和属组 
timestamps: 时间戳 
context: 安全标签 
xattr: 扩展属性 
links: 符号链接 
all: 上述所有属性
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux cp命令