扣丁學(xué)堂Linux培訓(xùn)之舉例alias和unalias命令詳解
2018-12-04 14:12:57
1168瀏覽
今天扣丁學(xué)堂Linux培訓(xùn)老師給大家舉例詳細(xì)介紹一下關(guān)于alias和unalias的命令使用,希望對(duì)同學(xué)們學(xué)習(xí)有所幫助,下面我們一起來看一下吧。
alias命令
alias使用一個(gè)用戶自定義的字符串來代替一個(gè)或者一串命令(包括多個(gè)選項(xiàng)、參數(shù))。這個(gè)字符串可以是一個(gè)簡(jiǎn)單的名字或者縮寫,不管這個(gè)命令原來多么復(fù)雜。alias命令已經(jīng)預(yù)裝在shell(包括BASH、Csh、Ksh和Zsh等)當(dāng)中。
alias的通用語(yǔ)法是:
alias [alias-name[=string]...]
接下來看幾個(gè)例子。
列出別名
可能在你的系統(tǒng)中已經(jīng)設(shè)置了一些別名。有些應(yīng)用在你安裝它們的時(shí)候可能已經(jīng)自動(dòng)創(chuàng)建了別名。要查看已經(jīng)存在的別名,運(yùn)行:
$ alias
或者,
$ alias -p
在我的ArchLinux系統(tǒng)中已經(jīng)設(shè)置了下面這些別名。
alias betty='/home/sk/betty/main.rb'
alias ls='ls --color=auto'
alias pbcopy='xclip -selection clipboard'
alias pbpaste='xclip -selection clipboard -o'
alias update='newsbeuter -r && sudo pacman -Syu'
創(chuàng)建一個(gè)新的別名
像我之前說的,你不必去記憶這些又臭又長(zhǎng)的命令。你甚至不必一遍一遍的運(yùn)行長(zhǎng)命令。只需要為這些命令創(chuàng)建一個(gè)簡(jiǎn)單易懂的別名,然后在任何你想使用的時(shí)候運(yùn)行這些別名就可以了。這種方式會(huì)讓你愛上命令行。
$ du -h --max-depth=1 | sort -hr
這個(gè)命令將會(huì)查找當(dāng)前工作目錄下的各個(gè)子目錄占用的磁盤大小,并按照從大到小的順序進(jìn)行排序。這個(gè)命令有點(diǎn)長(zhǎng)。我們可以像下面這樣輕易地為其創(chuàng)建一個(gè)別名:
$ alias du='du -h --max-depth=1 | sort -hr'
這里的du就是這條命令的別名。這個(gè)別名可以被設(shè)置為任何名字,主要便于記憶和區(qū)別。
在創(chuàng)建一個(gè)別名的時(shí)候,使用單引號(hào)或者雙引號(hào)都是可以的。這兩種方法最后的結(jié)果沒有任何區(qū)別。
現(xiàn)在你可以運(yùn)行這個(gè)別名(例如我們這個(gè)例子中的du)。它和上面的原命令將會(huì)產(chǎn)生相同的結(jié)果。
這個(gè)別名僅限于當(dāng)前shell會(huì)話中。一旦你退出了當(dāng)前shell會(huì)話,別名也就失效了。為了讓這些別名長(zhǎng)久有效,你需要把它們添加到你shell的配置文件當(dāng)中。
BASH,編輯~/.bashrc文件:
$ nano ~/.bashrc
一行添加一個(gè)別名:
保存并退出這個(gè)文件。然后運(yùn)行以下命令更新修改:
$ source ~/.bashrc
現(xiàn)在,這些別名在所有會(huì)話中都可以永久使用了。
ZSH,你需要添加這些別名到~/.zshrc文件中。Fish,跟上面的類似,添加這些別名到~/.config/fish/config.fish文件中。
查看某個(gè)特定的命令別名
像我上面提到的,你可以使用alias命令列出你系統(tǒng)中所有的別名。如果你想查看跟給定的別名有關(guān)的命令,例如du,只需要運(yùn)行:
$ alias du
alias du='du -h --max-depth=1 | sort -hr'
像你看到的那樣,上面的命令可以顯示與單詞du有關(guān)的命令。
關(guān)于alias命令更多的細(xì)節(jié),參閱man手冊(cè)頁(yè):
$ man alias
unalias命令
跟它的名字說的一樣,unalias命令可以很輕松地從你的系統(tǒng)當(dāng)中移除別名。unalias命令的通用語(yǔ)法是:
unalias <alias-name>
要移除命令的別名,像我們之前創(chuàng)建的du,只需要運(yùn)行:
$ unalias du
unalias命令不僅會(huì)從當(dāng)前會(huì)話中移除別名,也會(huì)從你的shell配置文件中永久地移除別名。
還有一種移除別名的方法,是創(chuàng)建具有相同名稱的新別名。
要從當(dāng)前會(huì)話中移除所有的別名,使用-a選項(xiàng):
$ unalias -a
更多細(xì)節(jié),參閱man手冊(cè)頁(yè)。
$ man unalias
如果你經(jīng)常一遍又一遍的運(yùn)行這些繁雜又冗長(zhǎng)的命令,給它們創(chuàng)建別名可以節(jié)省你的時(shí)間?,F(xiàn)在是你為常用命令創(chuàng)建別名的時(shí)候了。
以上就是關(guān)于扣丁學(xué)堂Linux培訓(xùn)之舉例alias和unalias命令的詳細(xì)介紹,希望對(duì)同學(xué)們學(xué)習(xí)Linux開發(fā)有所幫助,最后扣丁學(xué)堂有專業(yè)老師制定的Linux學(xué)習(xí)路線圖輔助學(xué)員學(xué)習(xí),此外還有與時(shí)俱進(jìn)的Linux課程體系和Linux視頻直播課供大家學(xué)習(xí),想要學(xué)好Linux開發(fā)技術(shù)的小伙伴快快行動(dòng)吧??鄱W(xué)堂Linux技術(shù)交流群:422345477。

【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】
查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>
標(biāo)簽:
Linux培訓(xùn)
Linux視頻教程
紅帽Linux視頻
Linux學(xué)習(xí)視頻
Linux入門視頻