如果你曾經在
linux shell
命令列提示符下輸入過命令,你可能已經使用了
bash
。畢竟,它是多數現代的
gnu/linux
版本的預設命令列
shell
。bash shell
是進入linux
作業系統的
首個介面。它接受,解釋並執行你的命令,並且向你提供
shell
指令碼和自動任務執行的編譯模組。
bash
包含了一些功能強大的工具和方便之處。如果你是經常要用到命令列的使用者,這些可以減少你相當多的輸入。本文給出了十個最有用的工具:
1.輕鬆呼叫先前的命令
bash
在乙個歷史緩衝區中保留你執行的命令,並且允許你通過上和下的游標鍵在先前的命令間迴圈以再次呼叫它們。甚至為了更快速的重新呼叫,可以通過輸入少量命令字元然後跟組合鍵
ctrl-r
來「快速查詢」先前執行的命令;然後
bash
將掃瞄命令歷史以匹配命令並在控制台顯示它們。重複按
ctrl-r
可以在整個匹配的命令列表中進行迴圈。
2.使用命令別名
如果你頻繁地使用引數相同的某個命令,你可以讓
bash
為它建立乙個別名。這個別名將組合需要的引數,所以你無需記住它們或每次手工輸入它們。例如,如果你經常使用
ls -l
以獲得詳細的目錄列表,你可以使用這個命令:
bash> alias ls='ls -l'
這樣就建立了自動包含
-l選項的別名。一旦該別名被建立,在
bash
提示符下輸入
ls將呼叫該別名就輸出
ls -l
。你可以通過呼叫沒有任何引數的別名獲得可用別名的列表,你也可以用
unalias
命令刪除別名。
3.使用檔名自動補全
bash
在命令提示符下支援檔名自動補全。要使用該特性,輸入檔名的前幾個字元,然後按
tab鍵。
bash
將掃瞄當前的目錄以及搜尋路徑中的所有其他目錄以匹配該檔名。如果只找到乙個匹配,
bash
將為你自動補全該檔名。如果找到多個匹配,將提示你選擇乙個。
4.使用快捷鍵以高效地編輯命令列
bash
為命令列的瀏覽和編輯支援許多快捷鍵。快捷鍵
ctrl-a
將游標移動到命令列的開始處,而快捷鍵
ctrl-e
將游標移動到命令列的末尾。快捷鍵
ctrl-w
直接刪除游標前的字,而快捷鍵
ctrl-k
直接刪除游標前的所有字元。你可以用
ctrl-y
撤銷乙個刪除。
5.獲得新郵件的自動通知
通過設定
$mailpath
變數指向你的本地郵件池,你可以配置
bash
自動向你通知新郵件。例如,命令為:
bash> mailpath='/var/spool/mail/john'
bash> export mailpath
這時,bash
每次有新訊息進入
john
的郵件池時向
john
的控制台輸出乙個通知。
在後台執行任務
6.在後台執行任務
bash
允許你在後面執行乙個或多個任務,並且可選擇地掛起或重新開始任何當前任務。要在後台執行乙個任務,在其命令列後面新增乙個
&記號。例子如下:
bash> tail -f /var/log/messages &
[1] 614
這種方式的每個後台任務都被分配乙個任務
id,並在控制台輸出。任務可以用命令
fg jobnumber
從後台調到前台,
jobnumber
是你想調到前台的任務
id。舉例如下:
bash> fg 1
任何時候在
bash
提示符下輸入
jobs
都可以獲得正在執行的任務的列表。
7.快速跳轉到經常使用的目錄
你可能已經知道
$path
變數列出
bash
的「搜尋路徑」,當它在當前目錄下無法找到請求的檔案時將搜尋的目錄。然而,
bash
也支援$cdpath
變數,它列出當試圖改變目錄時
cd命令可訪問的目錄列表。要使用這個特性,分配乙個目錄列表給
$cdpath
變數,如下例所示:
bash> cdpath='.:~:/usr/lo
cal/apache/htdocs:/disk1/backups'
bash> export cdpath
現在,只要你使用
cd命令,
bash
將檢查$cdpath
列表中的所有目錄以匹配該目錄名。 8.
執行計算
bash
可以在命令列提示符下執行簡單的算術操作。要使用這個特性,只需簡單地在命令行內的雙括號中鍵入你想計算的算術表示式,如下所示。
bash
將嘗試執行該計算並返回結果。
bash> echo $((16/2)) 8
9.定製
shell
提示符你可以定製
bash shell
提示符以顯示當前使用者名稱和主機名、當前時間、平均負載和
/或當前工作目錄。要實現這一點,像下面這樣改變
$ps1
變數:bash> ps1='/u@/h:/w /@> '
bash> export ps1
root@medusa:/tmp 03:01 pm>
這將在
shell
提示符下顯示當前登入使用者的名稱,主機名,當前工作目錄和當前時間。
10.
獲得指定上下文幫助
bash
可以給出所有內建命令的幫助。要檢視所有內建命令的列表,請輸入
help
。要獲得某個特定命令的幫助,輸入
help command
,此處的
command
是你想檢視其幫助的命令。這裡是乙個例子:
bash> help alias
...一些幫助文字
...
顯然地,你可以任何時候通過在命令列提示符下輸入
man bash
以獲得bash shell
的詳細幫助資訊。
函式程式設計的十個小技巧
functional calisthenics是一套類似object calisthenics物件導向健美操的實踐模式,這些規則能夠讓你函式程式設計得更好,這些嚴格的約束能夠讓你以不同角度來思考如何編寫 1.只發生在頂層我們希望我們的 都是純函式的,這是為了避免依賴任何不純的因素,也就是說,如果必須...
Xshell 十個技巧
一 帳號密碼儲存。可以儲存多個vps登陸資訊,免去每次輸入的煩惱。二 數字小鍵盤輸入。如果不設定的話,輸入數字小鍵盤,會顯示亂碼。如圖設定即可 三 設定文字顏色。如圖設定,就可以得到像黑客帝國那樣綠色的文字,在你編譯軟體的時候,是不是恍然若見那華麗麗的數字瀑布?四 設定命令快捷按鈕 當你管理多個vp...
提高監控策略的十個小技巧
原文 10 tips for an effective monitoring strategy 翻譯 diwei 這是我三篇 文章中的第二篇,在這幾篇文章中我會對o reilly media中devops for media entertainment這篇文章提到的一些觀點進行擴充套件。第一篇文章介...