Bash 使用技巧大补贴
生活随笔
收集整理的這篇文章主要介紹了
Bash 使用技巧大补贴
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Bash 是我們經常與之打交道的 Shell 程序,本文針對其使用技巧進行了搜羅。相信在你看過這些內容之后,定會在 Bash 的世界里游刃有余。
- 從歷史中執行命令 有時候,我們需要在 Bash 中重復執行先前的命令。你當然可以使用上方向鍵來查看之前曾經運行過的命令。但這里有一種更好的方式:你可以按 Ctrl + r 組合鍵進入歷史搜索模式,一旦找到需要重復執行的命令,按回車鍵即可。
- 重復命令參數 先來看一個例子: mkdir /path/to/exampledir cd !$ 本例中,第一行命令將創建一個目錄,而第二行的命令則轉到剛創建的目錄。這里,“!$”的作用就是重復前一個命令的參數。事實上,不僅是命令的參數可以重復,命令的選項同樣可以。另外,Esc + . 快捷鍵可以切換這些命令參數或選項。
- 用于編輯的快捷鍵
- Ctrl + a:將光標定位到命令的開頭
- Ctrl + e:與上一個快捷鍵相反,將光標定位到命令的結尾
- Ctrl + u:剪切光標之前的內容
- Ctrl + k:與上一個快捷鍵相反,剪切光標之后的內容
- Ctrl + y:粘貼以上兩個快捷鍵所剪切的內容
- Ctrl + t:交換光標之前兩個字符的順序
- Ctrl + w:刪除光標左邊的參數(選項)或內容
- Ctrl + l:清屏
- 處理作業 首先,使用 Ctrl + z 快捷鍵可以讓正在執行的命令掛起。如果要讓該進程在后臺執行,那么可以執行 bg 命令。而 fg 命令則可以讓該進程重新回到前臺來。使用 jobs 命令能夠查看到哪些進程在后臺執行。 你也可以在 fg 或 bg 命令中使用作業 id,如: fg %3 又如: bg %7
- 使用置換
- 命令置換 先看例子: du -h -a -c $(find . -name *.conf 2>&-) 注意 $() 中的部分,這將告訴 Bash 運行 find 命令,然后把返回的結果作為 du 的參數。
- 進程置換 仍然先看例子: diff <(ps axo comm) <(ssh user@host ps axo comm) 該命令將比較本地系統和遠程系統中正在運行的進程。請注意 <() 中的部分。
- xargs 看例: find . -name *.conf -print0 | xargs -0 grep -l -Z mem_limit | xargs -0 -i cp {} {}.bak 該命令將備份當前目錄中的所有 .conf 文件。
- 使用管道 下面是一個簡單的使用管道的例子: ps aux | grep init 這里,“|”操作符將 ps aux 的輸出重定向給 grep init。 下面還有兩個稍微復雜點的例子: ps aux | tee filename | grep init 及: ps aux | tee -a filename | grep init
- 將標準輸出保存為文件 你可以將命令的標準輸出內容保存到一個文件中,舉例如下: ps aux > filename 注意其中的“>”符號。 你也可以將這些輸出內容追加到一個已存在的文件中: ps aux >> filename 你還可以分割一個較長的行: command1 | command2 | ... | commandN > tempfile1 cat tempfile1 | command1 | command2 | ... | commandN > tempfile2
- 標準流:重定向與組合 重定向流的例子: ps aux 2>&1 | grep init 這里的數字代表:
- 0:stdin
- 1:stdout
- 2:sterr
The best tips & tricks for bash, explained [Linux Tutorials Blog]
(Thanks to Rechosen!)
?
http://linuxtoy.org/archives/the-best-tips-and-tricks-for-bash.html
總結
以上是生活随笔為你收集整理的Bash 使用技巧大补贴的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 详细讲述CV的创作与包装
- 下一篇: motionVFX mRevealer