在 Linux 上使用的五個超級神奇的 Shell 別名
如果你還沒有充分利用Shell縮寫,那么你正在浪費寶貴的時間。一遍又一遍地重復輸入相同的內容是無聊、單調而且效率低下的。為什么要花時間記住冗長的命令,當你可以簡化它們呢?
縮寫是給命令、一串命令或一小段文本起個名字的方法。你可以將多個命令鏈接在一起,或者將一長串參數傳遞給經常使用的命令,并給它起一個更短的名字。如果你經常輸入相同的內容并希望給它起一個更容易記住的名字,這非常有用。
使用縮寫可以減少運行常用命令的時間。而且,你再也不會忘記正確的參數,因為你可以將它們構建到縮寫中。如果設置得當,你可以通過縮寫實現一些真正神奇的事情。
在這篇文章中,我想告訴你一些作為工程師我每天都在使用的縮寫。這些縮寫是絕對的生命救星。它們已經成為了肌肉記憶,老實說,我無法沒有它們生活。
1、Git status
alias gg='git status'
簡單,是的。高效?你無法想象。如果你計算一下每天調用git status的次數,你可能會有些震驚。在Git存儲庫中,這是一個非常常見的命令。它顯示了哪些文件已準備提交,你處于哪個分支上,以及許多其他有價值的信息。
輸入 git status 可能看起來并不太瘋狂,但看看它需要多長時間?看看你的手指在鍵盤上跳舞的方式。有一個空格,字符本身以特定的模式間隔開,容易出錯。一旦搞砸了,你就需要重新開始。浪費了這么多時間。只需要縮寫它。
輸入gg要快得多,如果你輸入錯誤,那么也許考慮一下打字課程…
2、運行Pylint
alias pll='pylint -f colorized'
無論你喜歡還是討厭,代碼檢查器都是必不可少的。不管你喜不喜歡,沒有一個工程師是完美無缺的。我們都會在某個時刻犯錯誤。你需要對代碼進行檢查,因此讓它變得簡單易行是至關重要的。
我寫了很多Python代碼,所以我非常依賴Pylint進行代碼檢查。我也喜歡以帶顏色的輸出方式運行Pylint,有時還使用其他自定義參數。一遍又一遍地鍵入這些內容并不有趣。將其設置為一個簡短的縮寫,現在就更有趣了。
你可以傳遞不同的格式類型、忽略文件、檢查器以及不同的.rc文件?;旧?,任何你可以傳遞給正常命令的東西都可以放在縮寫中。這就是它的強大之處,因為你可以根據自己的喜好設置代碼檢查器,而無需記住或重新輸入所有這些選項。
3、登錄ECR
alias ecr_login='aws ecr get-login-password --region <REGION> | docker login --username AWS --password-stdin <ECR_URI>'
如果你經常使用Docker鏡像并且還使用ECR,那么這個別具一格的命令將會比面包更好。登錄ECR非常繁瑣。你必須將所有這些命令連接在一起,并使用特定的憑據讓Docker登錄。如果你不記得該命令,那真是一大痛苦。然后你還得去查找,浪費很多時間。
只需將登錄命令設置為一個簡潔明了的別名。如果你在多個ECR區(qū)域工作,甚至可以根據區(qū)域別名。為東海岸、西海岸甚至更遠的地方都設置一個登錄別名。世界就是你的海蠣,現在你可以快速輕松地登錄。
不要忘記在上述命令中添加你自己的區(qū)域和ECR URI,以使其正常工作。
4、運行Ansible
alias apb='cd <repo> && ansible-playbook -i <inventory_file>
對我來說,運行Ansible playbooks是日常工作。我每天運行多個play,并且經常重復執(zhí)行。尤其是當我正在構建新的角色或與Ansible中的條件邏輯作斗爭時。誰不喜歡將YAML作為代碼呢?
能夠使用我需要的基本標志運行Ansible非常重要。重新輸入一長串參數需要很長時間。當然,你可以按上箭頭重用之前執(zhí)行的命令,但這并不總是最方便的選項。如果你轉而切換到編輯文件,現在又要按兩次上箭頭。這很容易在開發(fā)過程中被忽略,然后你又得重新輸入一遍。
只需給它取個別名。
這還可以讓你有機會確保你是否在使用ansible.cfg文件(如果有的話)。在上面的命令別名中,我們進入了我們的倉庫并在該上下文中運行。這是因為我們的Ansible配置位于那里。一旦你進入那個目錄,它會自動使用該配置。
如果有其他的清單文件,你也可以傳入它們。如果你有一些跨多個環(huán)境的全局清單,這將非常有幫助。
5、縮短常用命令
alias tf='terraform'
alias k='kubectl'
這是我最近開始實施的最后一個建議。起初我覺得這并不是必要的,但一旦你開始使用一兩個字母的命令而不是七八個字母的命令,就會有很大的不同。我每天都經常使用terraform和kubectl。
這些命令是另一個例子,它們的名稱很煩人。它們容易出錯,而將它們設為別名非常簡單。給自己一個方便,現在就將它們縮短,這樣你就可以忘記它們的拼寫。
我還鼓勵你查看其他你經常輸入的單詞命令。可能有一些你一遍又一遍地輸入的命令可以從縮短中受益。
現在,去給命令設置別名吧!