linux cp命令覆盖恢复,Linux中用cp命令直接覆盖不提示的方法

Linux中用cp命令直接覆盖不提示的方法

在Linux下,如果希望将文件file拷贝到目录dir下,可以执行:

cp file dir

但如果dir下已经存在一个名为file的文件的时候,系统总是会提示是否覆盖file。

这是一个很好的功能,它能够防止我们由于疏忽对系统造成的损害,但如果不希望看到这些交互的提示信息呢?比如我们需要写一个脚本,将某些文件安装到指定的目录下,这时我们肯定不希望看到提示。

可以试一下 -f 选项,-f 一般表示强制执行(force)。

cp -f file dir

但好像结果并不像我们希望的那样,系统依然会有覆盖提示。为什么呢?

原因很简单,系统将 cp 命令alias为 cp -i。当我们执行cp命令的时候,系统往往执行的是cp -i,-i

选项表示有交互的提示信息,所以执行 cp -f

的时候,系统实际执行的是 cp -i -f,

所以仍然会有覆盖提示。

可以这样解决,在root权限下输入:

gedit ~/.bashrc

在alias cp='cp -i'前面加一个“#”,不含引号。最后保存退出就行了。

不过这里还是建议大家在复制完成后,还是恢复 cp

的别名方式,因为可以多一层保险嘛,是人都会有犯混的时候,给自己加一个保险,有保障呀。

恢复的方法很简单,去掉#alias cp='cp -i'前面的就行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值