linux下面覆蓋文件,如何實現直接覆蓋,不提示


轉自:http://w-tingsheng.blog.163.com/blog/static/2505603420124309130528/

  cp覆蓋時,無論加什么參數-f之類的還是提示是否覆蓋,當文件比較少的時候還可以按Y確認,當很多文件的時候就不好說了。用下面的方法可以解決覆蓋提示的問題。

例如:把zongguofeng目錄下的文件復制到linuxzgf目錄
    
[root@linuxzgf ~]# cp zongguofeng/* linuxzgf
cp:是否覆蓋“linuxzgf/1.txt”? 
    執行上面的命令時,linuxzgf文件夾中存在的每個文件都會提示是否覆蓋;
    
  [root@linuxzgf ~]# cp -rf zongguofeng/* linuxzgf
cp:是否覆蓋“linuxzgf/1.txt”? 
  加了-f了,依然有此提示。

服務器上查找后發現在默認的系統中是加了別名如下
[root@linuxzgf ~]# alias 
alias cp='cp -i'
可以看到別人  ,也就是當執行cp的時候,其實執行的是cp -i參數


解決辦法:

方法一:修改bashrc文件禁用掉cp的alias

[root@linuxzgf ~]# vi ~/.bashrc        
    
  在alias cp='cp -i'前加上"#"注釋,重新登錄即可實現復制不提示。

[root@linuxzgf ~]# cp -rf zongguofeng linuxzgf
[root@linuxzgf ~]# cp -r zongguofeng linuxzgf


方法二:直接輸入命令即可實現

[root@linuxzgf ~]# cp -rf zongguofeng linuxzgf/
cp:是否覆蓋“linuxzgf/zongguofeng/user_add.sh”?

[root@linuxzgf ~]# \cp -rf zongguofeng linuxzgf
[root@linuxzgf ~]#


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM