“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

全文共1990字,預計學習時長7分鐘

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

圖源:unsplash

想提高工作效率嗎?想更快完成任務早點下班嗎?想體驗“明學”的魅力嗎?駕馭終端就是方法之一。與其在GUI中用滑鼠四處點,不如直接利用終端,秒殺工作不再發愁。

不過,這需要開發者對可用的控制檯命令有一定的瞭解。若想成為一名命令列“忍者”,但缺乏相關使用經驗,別慌,本文幫你搞定。

1。pwd

pwd是printworking directory的縮寫,這是最常用的命令之一。這一命令可為開發者提供當前工作目錄的上下文,輸出目錄的完整系統路徑。

雖然pwd命令不如其他命令提供的選項那麼多(因為它很直接),但其中有一個忽略符號連結(ignore symlinks)的選項,可透過-P 選項實現。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

2。ls

下面要介紹的命令是list的縮寫 ls,這個命令可以列出一個目錄中的所有檔案,開發者可以制定目標目錄。如果沒有制定的目錄,那麼預設使用當前的工作目錄。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

注意該命令中有一些非常有用的選項,可以用來提取更多有價值的資訊。

例如-a 選項,這個選項能夠列出隱藏的檔案——也即名稱開頭為點的檔案。而-l選項則可以提供了一個很長的列表,其中包含了檔案大小和許可權等資訊。也可以把兩個選項組合起來:ls –al。

3。cd

cd 命令是changedirectory的縮寫,也很常用,該命令允許開發者改變當前的工作目錄。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

開發者還可以利用該命令同時在一個目錄中移動多級目錄,實現這一點需要指定完整的目標目錄路徑。

下圖展示瞭如何將檔案從Downloads資料夾移動到project資料夾中。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

想要轉到父資料夾必須使用。。。下圖展示瞭如何從Downloads資料夾轉移到project資料夾中,在執行cd 。。時,當前的工作目錄變成了Downloads資料夾。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

可以看到,上文中經常使用~,這就是主目錄。有趣的是,開發者可以結合前述的兩個命令,看到~資料夾的物理路徑。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

4。cp mv

cp命令是copy的縮寫,使用這個命令可以同時複製檔案和目錄。第一個檔案或第一個目錄是源,第二個是目標。下圖示範瞭如何用該命令將一個影象移動到Downloads 資料夾中。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

在複製目錄時可以使用-R選項來進行遞迴複製,注意,其中也包括隱藏檔案。

在複製檔案和目錄時有很多選項,例如可以將所有具有特定副檔名的檔案複製到一個目錄中。下圖展示瞭如何將所有副檔名為jpg的檔案複製到Downloads資料夾中。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

除了cp命令之外還有mv命令,它是move的縮寫。該命令用以移動檔案和目錄,其工作原理與mv命令相同,但具備的選項有所不同,比如mv命令沒有-R。

想要檢視mv命令具備的所有選項只需鍵入:

5。rmdir rm

建立檔案和目錄都有單獨的命令,與此類似,刪除檔案和目錄也有兩個單獨的命令。

刪除目錄可以使用rmdir命令,代表remove directory。不過這個命令只能刪除空目錄。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

rm 命令則更為強大。你可能已經猜到了,它是remove的縮寫。rm命令能夠刪除每個指定的檔案。不過雖然可以用這個命令刪除目錄,但並不是預設的。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

當使用rm選項執行 rm 命令時,該命令將遞迴地刪除匹配的目錄、子目錄以及它們所包含的所有檔案。想要忽略不存在的檔案,不被刪除之前跳出的提示視窗打擾,可以使用-f選項。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

6。cat, tail head

有若干命令可幫助讀取檔案內容。第一個是cat 命令——concatanate的縮寫。該命令功能很多,其中之一就是顯示檔案內容。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

注意,cat命令輸出的是整個檔案的內容。有些情況下,開發者只想讀取檔案的前幾行或最後幾行,此時可以選擇tail 或 head命令來處理。tail命令可以輸出檔案的最後10行,而 head命令則可以輸出檔案的前10行。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

使用-n 選項可以指定輸出行的數量,tail和head命令都是如此。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

7。mkdir touch

建立目錄可以使用mkdir命令,是make directory的縮寫。該命令需要一個引數:新目錄的名稱。為了驗證命令是否成功執行,可以使用ls命令。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

建立檔案和建立目錄一樣簡單,只需把mkdir命令改成touch 命令即可。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

新建立的資料夾是空的,這點很好。如果想驗證命令是否成功執行,同樣可以使用ls 命令。

8。grep

grep命令是global regularexpression print的縮寫,可用於搜尋文字。該命令可以掃描檔案以尋找目標檢索資訊,並以開發者喜歡的格式顯示結果。

舉一個非常簡單的例子。有一個包含所有國家名稱的檔案,現在我們需要檢查國家列表中是否有Netherlands(荷蘭)。注意,預設情況下,grep命令會區分大小寫。

為此,第一個的引數是要找的單詞,第二個引數是要搜尋的檔案。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

如果不想區分大小寫,可以使用-i選項來搜尋,這樣一來,無論要找“BeL”、“bel”還是“BEL”,都可以實現。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

注意,在上圖中, grep命令會將整個匹配的行輸出到終端,可以使用-c 選項來輸出匹配行的數量。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

9。find

最後一個要介紹的命令是 find 命令,該命令可以快速查詢檔案或目錄。例如想要找到當前目錄中的所有CSS檔案,用find命令就可以完成。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

注意, find 命令還可以搜尋所有子目錄。

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

圖源:Unsplash

“我不要你覺得,我要我覺得”,駕馭終端的“明學”,你掌握了嘛?

“明學”的魅力?我只要我覺得:駕馭終端,提高生產力

留言點贊關注

我們一起分享AI學習與發展的乾貨

如轉載,請後臺留言,遵守轉載規範