linux copy cp目录强制覆盖的方法--Linux使用cp命令直接覆盖不提示的方法及原因。

jackxiang 2013-6-22 18:58 | |

cp /opt/harbor/harbor.cfg{,.ori}
harbor.cfg ==> harbor.cfg.ori

方法一:yes|cp -r /x  y
cp -rf 即使使用了f 每个文件仍然会询问。 yes|可以解决这个问题。



方法二:(加右斜杠)
Linux使用cp命令直接覆盖不提示的方法
普通的cp命令使用
例如:cp abc.txt  /home
如果/home里面之前有abc.txt文件,会提示你是否要覆盖?这个时候你需要输入Y,假如文件很多的话,每复制一个文件都要输入一次Y.
下面介绍cp文件时直接覆盖不提示的方法
命令如下:
\cp abc.txt /home
直接复制abc.txt  到/home 里面,不管/home 里面之前是否有这个文件都会直接覆盖,不再出现覆盖提示!

原因:alias 成cp -r了
vi ~/.bashrc
alias cp='cp -i'
——————————————————————————————————————————————————————
新做了服务器,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!保存推出,然后重新登陆就可以了。
来自:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=3637144&highlight=
http://soft.chinabyte.com/os/220/11760720.shtml

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/6473/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2019-2-13 17:58
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]