通過8個技巧讓你成為一個超強的Linux終端使用者
使用Linux終端不僅僅是隻輸入命令。學習這些基本的技巧,你就會逐漸掌握Bash shell,這個在大多數Linux發行版上預設使用的終端工具。
這篇文章是寫給缺乏經驗的新手的,我相信大多數高階使用者已經知道了所有的這些技巧。但是,你仍然可以看看,也許能學到你一直以來都忽略了的東西。
Tab鍵自動補全
使用Tab鍵自動補全是基本的技巧。它能節省你很多時間,而且當你不確定一個檔名或者命令怎麼拼寫時,它也及其有用。
舉個例子,比如在當前目錄你有一個檔案,檔名是“really long file nam”,你想刪除這個檔案。你可以輸入整個檔名,但是你得小心輸錯空格符(需要用\轉義)。如果你輸入”rm r”,然後按Tab鍵,Bash會自動為你補全這個檔案的名字。
當然,如果當前目錄中你有很多以字母r開頭的檔案,Bash就會不知道你指的是哪一個。比如當前目錄你有另一個名字叫做“really very long file name”的文,當你按Tab鍵時,Bash會補全到“really\”部分,因為兩個檔案都是以這開頭的。然後,再按Tab鍵你會看到所有能匹配該開頭的檔案列表,如下圖。
接著輸入你想要的檔名然後按Tab鍵。這樣,當我們輸“l”然後按Tab鍵時,Bash會自動補全我們想要的檔名。
這種方法對於輸入命令來說同樣適用。當你不確定你想要的命令是什麼,只記得以”gnome”開頭時,輸入“gnome”然後按Tab鍵,你就會看到所有可能的結果。
管道命令
管道命令允許你把一個命令的輸出結果轉移給另一個命令。在Unix的設計哲學中,每個程式都是隻有少而精的功能。舉個例子,”ls”命令會顯示當前目錄中所有的檔案列表,而”grep”命令會在制定的地方搜尋輸入的字串。
把這兩者通過管道命令(用“|”符號表示)結合起來,你就可以在當前目錄搜尋某個檔案了,以下命令用來搜尋“really”:
ls | grep really
萬用字元
星號”*”是一個可以匹配任何東西的萬用字元。比如,如果我們想把”really long file name“和”really very long file name“從當前目錄都刪了,我們可以使用如下命令:
rm really*name
這個命令刪除了所有以really開頭,以name結尾的檔案。如果你用”rm *”命令,將會刪除該目錄下的所有檔案,所有需謹慎使用。
輸出重定向
“〉”字元可以把一個命令的輸出結果重定向到一個檔案,而不需要額外使用另一個命令。比如,下圖的程式碼使用”ls”命令來列出當前目錄的所有檔案,並把輸出的列表輸入到了一個名為”file1“的檔案,而不是僅僅輸出顯示在終端上。
ls > file1
命令列歷史
Bash會記得你使用過的命令的歷史。你可以使用向上鍵和向下鍵來翻閱你已經使用過的命令。使用”history”命令會把歷史命令都列印出來,因此你可以使用管道命令來搜尋你最近使用的命令。
關於命令列歷史,還有很多可以使用的技巧
~,.& ..
波浪符”~”代表當前使用者的主目錄。所以,你可以使用”cd ~”切換到你的主目錄,而不用輸入”cd /home/name”。這對相對路徑同樣使用,比如”cd ~/Desktop”會切換到當前使用者的桌面目錄。
與之類似的是,”.”代表當前目錄,”..”代表父級目錄。所有,”cd ..”會跳到父級目錄。這對相對路徑同樣有效,比如你在Desktop目錄,你想切換到與Desktop目錄同級的Document目錄,你可以使用”cd ../Documents”命令。
後臺執行命令
預設情況下,Bash會在當前終端下執行你的命令。正常來說沒有問題,但是當你想同時執行一個應用程式而又要繼續使用該終端時怎麼辦?比如你輸入”firefox”命令來執行火狐瀏覽器,火狐將會佔據你的終端並且顯示一些錯誤資訊等輸出,直到你關閉它。但是加一個”&”符號在命令後面會使Bash在後臺執行該程式:
firefox &
條件執行
你同樣可以用Bash執行兩個命令,一個接著一個。第二個命令只有當第一個命令成功執行完畢後才會執行。要想做到這樣,把兩個命令在同一行中用”&&”分隔即可。
比如,”sleep”命令會以秒為單位接受一個引數,然後倒數計時,允許結束。單獨來用的話,該命令沒有任何用處,但是你可以把它作為執行下一個程式之前的延時。下面的命令會停5秒然後執行gnome的截圖工具:
sleep 5 && gnome-screenshot
你還有任何想要分享的技巧嗎?請留言。
原文連結: Chris Hoffman 翻譯: 極客範 - minejo
相關文章
- 11個讓你吃驚的Linux終端命令Linux
- Linux終端的8個詭異傢伙Linux
- 10 個超級有趣的 Linux 終端遊戲Linux遊戲
- 8個酷炫的GitHub技巧,讓你看起來像大佬一樣!Github
- Ubuntu Linux終端顏色個性化設定技巧UbuntuLinux
- 你有什麼喜歡的 Linux 終端技巧?Linux
- 8個小技巧,讓一個遊戲變得更好玩遊戲
- 8 個出沒在 Linux 終端的詭異傢伙Linux
- 分享一個能讓你的研發效率提升超過20%的工具
- 新手必看的12個超實用開車技巧 看完你也可以成為高手!
- 一個思維習慣,讓你成為架構師架構
- Linux獲取10個你最常用的終端命令列表Linux命令列
- 7個讓你驚歎的HTML技巧HTML
- 掌握8個Macos隱藏技巧,助你成為Mac達人Mac
- Mac使用者需要知道的7個便捷的終端命令技巧來啦!Mac
- 讓你更好使用 Typescript 的11個技巧TypeScript
- 如何為你的 Linux 終端帶來好運Linux
- 6個很棒的PostCSS外掛,讓您成為一個CSS嚮導CSS
- 11個炫酷的Linux終端命令大全Linux
- 透過8個小例子帶你掌握Linux Head命令!Linux
- 8個Laravel模型時間戳使用技巧,你都沒用過Laravel模型時間戳
- 為你介紹4個超實用的Linux監控工具Linux
- 如何“販賣”你的故事?8個實用技巧
- 10 個常見的 Linux 終端模擬器Linux
- 通過Guava實現兩個包含不同物件的List合併成一個ListGuava物件
- 能讓你受益匪淺的10個css使用技巧CSS
- 如何讓自己成為一個專業的高階開發?
- 財務打理不再難:5個技巧幫你成為理財高手
- 8個有用的JS技巧JS
- 8 個有用的 JS 技巧JS
- [譯] 8 個技巧讓你在 2018 年構建更好的 Node.js 應用程式Node.js
- 6個你可能從未使用過的Python技巧!Python
- 在 Linux 中把一個網頁轉換成 PDF的技巧介紹Linux網頁
- Kali Linux開啟多個終端視窗Linux
- 推薦14 個常用 Linux 終端快捷鍵Linux
- Linux系統上最快的3個GPU加速終端模擬器你知道嗎?LinuxGPU
- 12個超好用的IntelliJ IDEA 外掛!你用過幾個?IntelliJIdea
- 8個最高效的Python爬蟲框架,你用過幾個?Python爬蟲框架
- 邦芒面試:10個溝通小技巧讓你招到最合適的人才面試