linux cp 直接覆蓋不提示信息 解決方法

默認狀況下,cp覆蓋時,不管加什麼參數 -f 之類的 仍是提示是否覆蓋。bash

緣由是:服務器會默認增長別名 alias cp=’cp -i’,當你執行cp時,其實執行的是cp –i。服務器

[root@ltt01 ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

 

cp 時取消提示信息,直接覆蓋,不須要用戶再敲擊 y 進行交互,這在腳本執行時很重要。spa

下面是兩種作法解決這個問題。code

方法一:將別名禁掉

[root@ltt01 ~]# vi ~/.bashrc 

在alias cp=’cp -i’前加上」#」註釋掉這行,:wq! 保存退出,而後從新登錄就能夠了。blog

方法二:cp 前 加 \   

[root@ltt01 ~]# \cp 1.txt /back/1.txt 
[root@ltt01 ~]# 
相關文章
相關標籤/搜索