W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
定義或顯示別名。
alias [-p] [name[=value] ...]
-p:顯示全部已定義的別名。
name(可選):指定要(定義、修改、顯示)的別名。
value(可選):別名的值。
alias返回true,除非您要顯示的別名未定義。
# 顯示全部已定義的別名
alias
alias -p
# 顯示已定義的別名(假設(shè)當(dāng)前環(huán)境存在以下別名)
alias ls
alias ls grep
# 定義或修改別名的值
alias ls='ls --color=auto'
alias ls='ls --color=never' grep='grep --color=never'
直接在shell里設(shè)定的命令別名,在終端關(guān)閉或者系統(tǒng)重新啟動(dòng)后都會(huì)失效,如何才能永久有效呢?
使用編輯器打開?~/.bashrc
?,在文件中加入別名設(shè)置,如:?alias rm='rm -i'
?,保存后執(zhí)行?source ~/.bashrc
?,這樣就可以永久保存命令的別名了。
因?yàn)樾薷牡氖钱?dāng)前用戶目錄下的?~/.bashrc
?文件,所以這樣的方式只對(duì)當(dāng)前用戶有用。如果要對(duì)所有用戶都有效,修改?/etc/bashrc
?文件就可以了。
請(qǐng)注意,以下內(nèi)容可能與您實(shí)際使用的系統(tǒng)有出入:
在CentOS7下,這個(gè)文件是??
/etc/bash.bashrc?
?。此外在CentOS7下,細(xì)看??~/.bashrc
??文件,會(huì)發(fā)現(xiàn)有這樣一段代碼:if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi
這個(gè)代碼的意思就是如果存在那么就加載?
?.bash_aliases
??文件,所以也可以在用戶根目錄下新建該文件用于單獨(dú)存放命令別名設(shè)置。
# 為方便演示,刪除全部別名
unalias -a
# 沒(méi)有用單引號(hào)擴(kuò)起
alias rm=rm -rf
# 執(zhí)行命令后報(bào)錯(cuò) bash: alias: -rf: not found
# 這時(shí)使用alias查看rm的別名時(shí)返回 alias rm='rm'
# 更具有迷惑性的例子
# 為方便演示,刪除全部別名
unalias -a
# 仍然沒(méi)有用單引號(hào)括起
alias ls=ls --color=never
# 執(zhí)行命令后看起來(lái)沒(méi)有報(bào)錯(cuò)
# 使用alias查看全部別名會(huì)發(fā)現(xiàn)運(yùn)行結(jié)果如下:
# alias --color=never
# alias ls='ls'
# alias處理時(shí)將它們看成了兩組
Q:如果我要顯示一到多個(gè)別名,但不知道其中是否有未定義的該怎么辦?
A:正常執(zhí)行就是了,alias不會(huì)因?yàn)橛幸粋€(gè)未定義的別名就結(jié)束對(duì)剩余參數(shù)的執(zhí)行。
Q:如果我這么定義?alias cd='ls' ls='cd'
?,會(huì)有什么后果?
A:運(yùn)行cd依然會(huì)切換目錄,運(yùn)行l(wèi)s依然會(huì)列出文件夾的內(nèi)容;不要這樣定義。
執(zhí)行腳本時(shí)請(qǐng)注意:
使用?source
?命令執(zhí)行的bash腳本如果執(zhí)行了?alias
?或?unalias
?命令,那么有可能會(huì)對(duì)終端環(huán)境的別名設(shè)置產(chǎn)生影響;終端環(huán)境的別名設(shè)置也可能改變運(yùn)行結(jié)果;
通過(guò)?sh
?方式調(diào)用的bash腳本或直接運(yùn)行當(dāng)前用戶有執(zhí)行權(quán)限的腳本不受終端環(huán)境的別名影響。
unalias
?命令。mv
??cp
? ?rm
?等命令的別名設(shè)置危險(xiǎn)的-f選項(xiàng),比如?alias rm='rm -f'
?。help
?命令。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: