天天看点

介绍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!保存推出,然后重新登陆就可以了。

继续阅读