关键字
文章内容
Linux中cp直接覆盖不提示的方法
 
 
修改时间:[2012/08/24 21:08]    阅读次数:[1498]    发表者:[沩筱]
 

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

linux中cp强制覆盖拷贝?

mv覆盖不提示的方法?

rhel/centos复制文件并直接覆盖方法?

Linux下默认cp命令是有别名(alias cp='cp -i')的,无法强制覆盖,即使你用 -f 参数也无法强制覆盖文件,下面提供两种Linux下cp 覆盖方法.
1) 取消cp的alias,放心这不是永久生效
#unalias cp
#cp a /test/a

2) 用 \cp 执行cp命令时不走alias
#\cp a /test/a

上面两种是网中人给的解决方案
Blinux最开始有自己的方法
#yes|cp a /test/a

还有一种方法

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

mv原理跟cp差不多...