歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux服務器

Linux之Alias導致覆蓋提示問題

對一些機器進行版本升級,由於以往升級是習慣了備份用mv im im.bak然後再解一個im包出來,而目前這個升級面臨的是部分文件的覆蓋,但部分卻也不少,有上百個文件,在使用用cp -Rf /home/im/im /usr/local 出現大量是否覆蓋?

於是man cp

-f, --force

if an existing destination file cannot be opened, remove it and try again

看這裡似乎沒有提及覆蓋不提示,以為用錯了命令,於是百度,google了下,發覺還是-f不提示,納悶了,在同事的提示下說有個別名的問題,於是運行了下alias如下:

alias cp='cp -i'

alias l.='ls -d .* --color=tty'

alias ll='ls -l --color=tty'

alias ls='ls --color=tty'

alias mv='mv -i'

alias rm='rm -i'

alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

問題是,就如同事所說是因為這個問題,擔使用rm -rf時不也一樣不提示,不過man rm

-f, --force

ignore nonexistent files, never prompt

他倒是有忽略的意思;

不管了,反正找不到辦法先試試先

編輯root用戶/root

及全局別名,如果想更改某一用戶自己使用的別名可以在/home目錄下找到自己的目錄下執行vi .bashrc

# .bashrc

# User specific aliases and functions

alias rm='rm -i'

alias cp='cp -i'

alias mv='mv -i'

# Source global definitions

if [ -f /etc/bashrc ]; then

. /etc/bashrc

fi

~

~

把alias cp='cp -i'注釋掉

運行保存後的.bashrc文件

source ~/.bashrc

再執行,cp -Rf /home/im/im /usr/local 也就不提示了,其實這時候不用-f也可以吧,只不過我沒有試,機器要用,也就沒試了.這問題雖然解決但解決的有些郁悶!

Copyright © Linux教程網 All Rights Reserved