日期:2014-05-16  浏览次数:20673 次

Linux下cp直接覆盖

?

  cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,当没有打包的情况下直接复制   把test目录下的文件复制到test1目录
  cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,当没有打包的情况下直接复制
  把test目录下的文件复制到test1目录
  cp –r test/* test1
  执行上面的命令时,test1存在的每个文件都会提示是否覆盖;
  cp –rf test/* test1
  执行上面的命令时,test1存在的每个文件都不再会提示;
  这是我们希望的理想状态,但是有时加了-f了,还会有提示.
  因为服务器会默认增加别名 alias cp='cp -i',当你执行cp时,其实执行的是cp –i。
  alias下就可以看出来了。
  # alias
  alias cp='cp -i'
  用下面可以解决
  # vi ~/.bashrc
  在alias cp='cp -i'前加上"#"注释掉这行,:wq!保存推出,然后重新登陆就可以了。
  下次在使用cp -rf 就可以直接覆盖已经存在了文件了
当然你不想改变别名的话可以转义掉,\cp -rf即可