Bash的文件管理类命令之cp

本文详细介绍了Linux系统中cp命令的使用方法,包括不同场景下的拷贝选项如-r、-a、-p等,并解释了如何处理链接文件及同名文件覆盖等问题。

cp copy拷贝文件
cp语法:cp 源 目标
源为文件,如果目标不存在则默认创建相同文件
如果目标存在,目标为文件,则原有文件被覆盖
如果目标存在,目标为目录,则将源文件加入目录

源为目录,如果目的不存在则默认创建同名的目录

如果源是目录,则需要使用-r选项。
Bash的文件管理类命令之cp
由于源文件为目录,系统默认拒绝复制目录
加上-r的选项
Bash的文件管理类命令之cp
-a的选项 效果是归档
Bash的文件管理类命令之cp
Bash的文件管理类命令之cp
默认拷贝动作会将源文件的属主和属组更改为操作用户
Bash的文件管理类命令之cp
为了在拷贝的时候保持文件的属组和属主,需要用到-p(小写)选项
Bash的文件管理类命令之cp
现在/tmp下已经有了一个test的文件
再次执行拷贝命令
Bash的文件管理类命令之cp
这个时候系统就会询问是否需要覆盖原有文件,本次操作的是root用户,如果是普通用户就会直接覆盖,所以拷贝文件的时候最好带有-i的选项用于交互功能。
Bash的文件管理类命令之cp
Linux中有一个文件类型叫做链接文件
如果源文件是链接文件会有什么效果呢?
Bash的文件管理类命令之cp
Bash的文件管理类命令之cp
Bash的文件管理类命令之cp
文件大小变了,源文件的大小是14字节 ,拷贝目标文件是38字节。
看看systemlease指向的文件的信息
Bash的文件管理类命令之cp
大小为38字节。说明默认情况下,如果源文件是链接文件,系统会将真实文件的内容+源文件的文件名称送到目标目录中,而且通过操作发现,目标文件的文件类型发生了变化,之前的文件类型是l 现在的文件类型是-。
通过-P(大写)=-d选项拷贝文件
Bash的文件管理类命令之cp
源文件的链接文件属性保留了,大小也没有变化。
还可以使用--preserve= 长选项代替-p(小写),--preserve可以更灵活一些,因为它可以指定保留哪些文件属性。
Bash的文件管理类命令之cp
-p是所有属性都保留了。
Bash的文件管理类命令之cp
以上命令只保留了权限和所有关系,时间戳没有保留,所以日期不一样
默认情况是mode,ownership,timestamps 都有的。
-f的参数是不询问直接拷贝,如果有同名文件也不理会,也不提示。

转载于:https://blog.51cto.com/yueyue207/2048880

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值