Linux 之 Bash -- 命令別名與歷史命令

1.命令別名 alias

當你的慣用指令特別長的時候,可以通過alias進行簡化(alias顧名思義,就是給你的常用指令起個“綽號”)。
例如我們刪除文件都是用rm指令,萬一不小心手抖刪錯掉,就怕不好撤回,但是 rm -i指令則會在你刪除時做提示,提供一個選項讓我們確認是否要移除這個文件。用我MAC中的bash來練習,瞧👇這張圖,rm -i這個 指令會提示我是否要remove?這時只要輸入"yes" or "no"就可以了(也可以簡寫成"y"或"n")。


言歸正傳 alias:
alias rm='rm -i'(alias的定義規則與變量定義規則幾乎相同),從此以後,通過rm命令別名,我就可以實現rm -i的效果。可以看看👇下面的操作圖~~

如果我想看看我目前設置了多少別名呢?直接在命令行裏輸入alias就可以了,目前在我的MAC的terminal中,我只設定了rm=‘rm -i’這一個命令別名,所以就顯示了一個。看,多麼適合那些懶人啊~

如果想要把這個命令別名拿掉,直接在命令行中輸入 unalias rm就可以了,可以自己操作試試哦~

2.歷史命令 history

如果不是要做系統管理員的人,我覺得這部分的內容在工作中不怎麼用得到。爲了滿足求知慾,還是多瞭解吧,日後出現問題也可以想得到解決思路和方法。

2.1瞭解history

命令行中輸入 history 命令,然後你的屏幕上會打出兩欄信息,第一欄爲數字,第二欄爲命令代碼,其中的數字爲該指令在這個shell中的代碼。但是隻這樣獲取的信息量太大了(太多的無用信息=沒有信息),所以就有了一個參數n,通過 history [n](n代表數字,可以隨意替換)指令獲得最近n筆命令的信息。
注意:history 和 [n]之間要有一個空格~


可以看到👆上面我用了好多次history命令。

2.2 history幫你提高工作效率

history可以幫我們查詢命令,同時也可以利用相關的功能幫我們執行命令。

  • !number執行第n個命令
    注意:感嘆號和number之間不能有空格哦~
    這個命令就是執行第幾筆指令的意思,如同下圖,我知道第5筆指令是history 3,然後直接在命令行中敲擊!5便執行了history 3的命令,在這裏可能看不到什麼便捷,如果要執行的指令好長的話,這麼做可方便了呢。
  • !command 執行command開頭的那個指令
    通常由最近的指令向前搜索,遇到對應的command便開始執行。
    例如 !!vi 由最近的指令向前搜素,執行vi開頭的指令
  • history -c 清除history
    將目前的shell中的所有history內容全部消除。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章