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

 新做了服务器,cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,这在大量cp覆盖操作的时候是不能忍受的。

把a目录下的文件复制到b目录

cp –r a/* b

执行上面的命令时,b存在的每个文件都会提示是否覆盖;

cp –r –f a/* b

执行上面的命令时,b存在的每个文件都不再会提示;

这是我们希望的理想状态,但是有时加了-f了,怎么还会有提示呢?原来一些服务器会默认增加别名 alias cp='cp -i',当你执行cp时,其实执行的是cp –i。

在终端执行alias就可以看出来了。

[root@devdb ~]# alias

alias cp='cp -i'

可以这样解决

[root@devdb ~]# vi ~/.bashrc

在alias cp='cp -i'前加上"#"注释掉这行,:wq!保存推出,然后重新登陆就可以了。

原文地址:https://www.cnblogs.com/yhdsir/p/5026484.html