如何創建Bash別名
您是否經常發現自己在命令行上鍵入了一個長命令,或者在bash歷史記錄中搜索了先前鍵入的命令? 如果您對這些問題中的任何一個的回答為“是”,那麼您將發現bash別名很方便。 Bash別名使您可以為較長的命令設置一個令人難忘的快捷方式命令。
Bash別名實際上是快捷方式,可以使您不必記住長命令,並且在使用命令行時無需進行大量鍵入操作。 例如,您可以設置別名 tgz
成為 tar -xvfz
命令。
本文介紹了如何創建bash別名,以便您可以在命令行上提高工作效率。
創建Bash別名
在bash中創建別名非常簡單。 語法如下:
alias alias_name="command_to_run"
別名聲明以 alias
關鍵字,後跟別名名稱,等號以及鍵入別名時要運行的命令。 該命令需要用引號引起來,並且等號之間不能有空格。 每個別名都需要在新行中聲明。
的 ls
command可能是Linux命令行上最常用的命令之一。 我通常將此命令與 -la
切換以列出所有文件和目錄,包括長列表格式的隱藏文件和目錄。
讓我們創建一個簡單的bash別名,名稱為 ll
這將是 ls -la
命令。 為此,請打開終端窗口並鍵入:
alias ll="ls -la"
現在,如果您輸入 ll
在終端中,您將獲得與輸入相同的輸出 ls -la
。
的 ll
別名僅在當前的shell會話中可用。 如果退出會話或從另一個終端打開新會話,則別名將不可用。
要使別名持久化,您需要在 ~/.bash_profile
要麼 ~/.bashrc
文件。
在文本編輯器中打開文件:
nano ~/.bashrc
並添加別名:
〜/ .bashrc
# Aliases
# alias alias_name="command_to_run"
# Long format list
alias ll="ls -la"
# Print my public IP
alias myip='curl ipinfo.io/ip'
別名的命名方式應易於記憶。 還建議添加評論以供將來參考。
完成後,保存並關閉文件。 通過輸入以下命令使別名在當前會話中可用:
source ~/.bashrc
如您所見,創建簡單的bash別名既快捷又容易。
如果你想做你的 .bashrc
更模塊化的是,您可以將別名存儲在單獨的文件中。 某些發行版(例如Ubuntu和Debian)包括 .bash_aliases
文件,該文件來自 ~/.bashrc
。
使用參數創建Bash別名(Bash函數)#
有時您可能需要創建一個接受一個或多個參數的別名。 這就是bash函數派上用場的地方。
創建bash函數的語法非常簡單。 可以用兩種不同的格式聲明它們:
function_name () {
[commands]
}
要麼
function function_name {
[commands]
}
要簡單地將任意數量的參數傳遞給bash函數,請將其放在函數名稱之後,並以空格分隔。 傳遞的參數是 $1
, $2
, $3
等等,與函數名稱後的參數位置相對應。 的 $0
變量是為函數名稱保留的。
讓我們創建一個簡單的bash函數,該函數將創建一個目錄,然後導航到其中:
〜/ .bashrc
mkcd ()
{
mkdir -p -- "$1" && cd -P -- "$1"
}
與別名相同,將功能添加到您的 ~/.bashrc
歸檔並運行 source ~/.bash_profile
重新加載文件。
現在,而不是使用 mkdir
創建一個新目錄,然後 cd
要移至該目錄,只需鍵入:
mkcd new_directory
如果你想知道是什麼 --
和 &&
這是一個簡短的解釋。
--
-確保您不會意外將額外的參數傳遞給命令。 例如,如果您嘗試創建以以下內容開頭的目錄-
(破折號)而不使用--
目錄名稱將被解釋為命令參數。&&
-確保僅在第一個命令成功時才運行第二個命令。
結論#
到目前為止,您應該對如何創建bash別名和函數有很好的了解,這些別名和函數將使您在命令行上的生活更輕鬆,更高效。
如果您有任何疑問或反饋,請隨時發表評論。
bash終端