Linux系統中,讓alias命令永久儲存的方法!

2020-09-28 09:03:27

Background

最近接觸到了Linux系統,在學習的過程中有一個命令別名我感覺特別有意思。於是我照著教學編寫了我自己的命令alias zzm=‘echo 「wlz, I love u」’,然後馬上拉著給我女朋友看,她先是聚精會神地看著那幾行程式碼,然後看懂了之後就嬌羞地笑了,四目相對,我們都異常興奮。

可是第二天我繼續學習Linux的時候,我先在命令列輸入了zzm,可是發現卻提示我沒有這一條命令了,原來,愛會消失的對嗎嗚嗚嗚。。

不,我怎麼可能讓愛這麼不清不楚地就消失了呢!老子不服!

於是,我開始查閱資料並思考如何讓自定義的別名命令永久儲存,網上有些方法,但是Linux不同的發行版本有一些差異,有些方法不適用。我的虛擬機器器是Ubuntu18.04TLS的。

本來想著今天再把Linux的書看幾章,結果半天全都去鑽研這個去了。不過我一點都不後悔花這些時間去鑽研一個小問題。因為這是對愛的守護,同時,學習/研究其實也就是這種發現各種小小的問題,然後自我探索的一個過程。

廢話不多說,我開始講我在Ubuntu18.04TLS上是如何解決的吧。

Solution

首先將當前工作目錄調整到 /home/自己的使用者/

cd /home/zzmine

然後,搜尋.bashrc檔案(由於是以.開頭的檔案,需要用-a選項來顯示)

ls -a -l | grep .bashrc

確定有這個檔案後,開啟它!

less .bashrc

往下翻,你會看到一句話

You may want to put all your additions into a separate file like
~/.bash_aliases, instead of adding them here directly.

這個意思就是,你可以自己定義一個單獨的檔案 .bash_aliases來儲存自己定義的命令,而不是直接新增到.bashrc檔案中。那我們就自己在當前工作目錄 /home/zzmine 裡寫一個.bash_aliases 檔案吧。

vim .bash_aliases
alias zzm='echo "wlz,I love u"'

然後儲存,退出,最後重新執行.bashrc檔案使其生效

source .bashrc

接著,重新啟動,直接輸入之前定義的命令,發現已可以了!

Extension

其實,自定義命令的用處遠遠不止花哨地秀恩愛這麼簡單。可以將多條命令組合,然後賦予別名來簡化未來的工作。比如,可以將第一次推播到github的命令設定為:

alias gpush = 'git add .; git commit -m "first commit"; git push -u origin master'

最後,如果讀者對文章有疑問或其他想法,歡迎交流!