把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’
可以这样解决,
*方法1*
[root@devdb ~]# vi ~/.bashrc
在alias cp =’cp -i’前加上”#”注释掉这行,:wq!保存退出!
然后重新登陆就可以了。
如:
cp -R -f /home/priceangels/* /usr/ROOT/
方法二
\cp –r –f a/* b
方法来源
Q:UNIX命令前加\表示什么意思呢
比如:
\cp -f * /data1/
这样就能取消环境文件.cshrc的alias的某些东西
这是为什么呢
A:
\c == c
故\cp == cp
一般情况下是一样的
但是,有时候会出现这种情况 有人这样使用了alias命令
alias cp=”cp -i”
你再用cp a b时就会被翻译成 cp -i a b
但是用\cp就不会了