cp在拷贝时,如果遇到相同的文件名的文件,就会不断询问是否覆盖,让你输入yes or no 。为什么呢?这是为了linux为了安全考虑,在cp命令上用了别名。也就是你输入只是输入cp命令时,其实系统是你输入的是 “ cp -i” 。其中的 i就是表示交互式的意思,不断询问你是否覆盖。所以,cp强制覆盖有以下三种方法。
方法一:
输入alias命令,看到系统内部使用的是cp的别名。
复制代码
代码如下:
#alias
alias cp=’cp -i’
输入unalias cp命令,解除别名。
复制代码
代码如下:
#unaslias cp
(这只是临时取消cp的别名,不是永久的)
复制代码
代码如下:
#cp a test/a
呵呵,这下正常了吧。
方法二:
输入\cp命令,作用也是取消cp的别名。
复制代码
代码如下:
#\cp a test\a
呵呵,这么用也一样好使。
这种方法等效于,直接用cp命令的可执行文件的绝对路径来用
复制代码
代码如下:
#/bin/cp a.txt
方法三:
输入yes|cp a test\a,使用管道自动输入yes。
复制代码
代码如下:
#yes | cp a test\a
看到了吧,自动打出一堆yes,替你输入了。