簡介:這里有一些很有用的Linux命令,終端技巧和快捷方式,可以在使用Linux命令行時節(jié)省大量時間。
在本文中,我將向您演示一些專業(yè)的Linux命令技巧,這些技巧將使您節(jié)省大量時間,在某些情況下還可以避免很多麻煩,而且它也將幫助您提高工作效率。
并不是說這些只是針對初學(xué)者的Linux技巧。即使有經(jīng)驗的Linux用戶也有可能沒有發(fā)現(xiàn)這些,盡管你這些年來一直在使用Linux。
很酷的Linux終端技巧,幫助您節(jié)省時間和提高生產(chǎn)力
您很可能已經(jīng)知道這些Linux命令中的一些或全部。 無論哪種情況,都?xì)g迎您在評論部分中分享您喜歡的技巧。
其中一些技巧還取決于shell的配置方式?,F(xiàn)在讓我們開始!
1、使用tab鍵進(jìn)行自動完成
我將從一些看得見但又非常重要的事情開始:tab補(bǔ)全。
當(dāng)您開始在Linux終端中鍵入內(nèi)容時,您可以按Tab鍵,它會建議所有可能的選項,這些選項以您到目前為止所鍵入的字符串開頭。
例如,如果您要復(fù)制名為linuxidc.txt的文件,則只需鍵入“ cp l ”,然后按tab鍵查看可能的選項。
使用Tab鍵進(jìn)行自動完成
您也可以在完成命令時使用Tab鍵。
2、切換回上一個工作目錄
假設(shè)您以長目錄路徑結(jié)尾,然后轉(zhuǎn)到完全不同的路徑中的另一個目錄。 然后您意識到必須返回到先前所在的目錄。在這種情況下,您要做的就是鍵入以下命令:
cd –
這會將您帶回到上一個工作目錄。 您無需輸入長目錄路徑,也無需復(fù)制粘貼。
在目錄之間輕松切換
如果如下所示:
[linuxidc@localhost ~/www.linuxidc.com]$cd –
bash: cd: OLDPWD 未設(shè)定
是因為 cd 命令設(shè)置了 OLDPWD 環(huán)境變量值。除非你至少執(zhí)行了一次 cd 命令,否則 OLDPWD 環(huán)境變量不會包含任何值
cd – 和 cd $OLDWPD 命令的執(zhí)行結(jié)果并非在所有環(huán)境下都相同。
3、返回主目錄
這太明顯了。 您可以使用以下命令從Linux命令行中的任何位置移至主目錄:
cd ~
但是,您也可以僅使用cd返回主目錄:
cd
大多數(shù)現(xiàn)代Linux發(fā)行版均已為此命令預(yù)配置了shell。 在這里至少可以節(jié)省兩次擊鍵。
快速返回主目錄
4、列出目錄的內(nèi)容
您一定在想在列出目錄內(nèi)容的命令中還有了什么技巧。每個人都知道在這種情況下使用ls -l。
就是這樣。大多數(shù)人使用ls -l來列出目錄的內(nèi)容,而同樣的事情也可以用下面的命令來完成:
ll
同樣,這也取決于Linux發(fā)行版和shell配置,但是您很可能能夠在大多數(shù)Linux發(fā)行版中使用它。
使用ll而不是ls -l
5、在一個命令中運(yùn)行多個命令
假設(shè)您必須一個接一個地運(yùn)行幾個命令。您是否在等待第一個命令完成運(yùn)行,然后執(zhí)行下一個命令?
那么,您可以使用“;”分隔符。這樣,您可以在一行中運(yùn)行許多命令。無需等待先前的命令完成后再執(zhí)行其他任務(wù)。
command_1; command_2; command_3
6、僅在上一個命令成功的情況下,才能在一個命令中運(yùn)行多個命令
在上一個命令中,您了解了如何在一個命令中運(yùn)行多個命令以節(jié)省時間。但很多時候你必須確保命令不會失敗才能執(zhí)行下一條命令,那怎么半?
比如您要構(gòu)建代碼,然后在構(gòu)建成功的情況下才接著運(yùn)行make。
在這種情況下,可以使用&&分隔符。 &&確保下一條命令僅在上一條命令成功執(zhí)行時運(yùn)行。
command_1 && command_2
此命令的一個很好的例子是當(dāng)您使用sudo apt update && sudo apt upgrade升級系統(tǒng)時。
7、輕松搜索您使用過的命令
想象一下一種情況,您在幾分鐘/幾小時前使用了很長的命令,而您不得不再次使用它。問題是您不再記得確切的命令了。
反向搜索是您的救星。您可以使用搜索詞在歷史記錄中搜索命令。
只需使用ctrl + r鍵即可啟動反向搜索并鍵入命令的某些部分。它將查詢歷史記錄,并向您顯示與搜索詞匹配的命令。
ctrl + r 搜索詞
默認(rèn)情況下,它將僅顯示一個結(jié)果。要查看更多與您的搜索字詞匹配的結(jié)果,您將不得不反復(fù)使用ctrl + r。要退出反向搜索,只需使用Ctrl + C。
在命令歷史記錄中進(jìn)行反向搜索
請注意,在某些Bash Shell中,還可以在搜索詞中使用Page Up和Down鍵,它將自動完成命令。
8、解除Linux終端意外凍結(jié)的Ctrl + S
在很多類Unix 的系統(tǒng)上,Ctrl-S 都有特殊的含義:它會“凍結(jié)”終端(它曾經(jīng)被用來暫??焖贊L動)。因為“保存”一般也是用這個快捷鍵,所以經(jīng)常會有人不假思索地按下這個快捷鍵,結(jié)果大多數(shù)人都會被搞糊涂(我也經(jīng)常犯這個錯誤)。解凍終端是用Ctrl-Q,所以如果你忽然發(fā)覺終端看起來被凍結(jié)了,試一下Ctrl-Q,看能不能釋放它。
9、移至行首或行尾
假設(shè)您正在鍵入一個長命令,并且在途中您意識到必須在開始時進(jìn)行一些更改。 您將使用幾次向左鍵擊移動到行的開頭。 并且類似地進(jìn)行到該行的末尾。
當(dāng)然,您可以在此處使用Home和End鍵,但是也可以使用Ctrl + A轉(zhuǎn)到行的開頭,并使用Ctrl + E轉(zhuǎn)到結(jié)尾。
動圖演示如下
移至該行的開頭或結(jié)尾
我發(fā)現(xiàn)它比使用Home和End鍵更方便,尤其是在筆記本電腦上。
10、實時讀取日志文件
在需要在應(yīng)用程序運(yùn)行時分析日志的情況下,可以將tail命令與-F選項一起使用。
tail -F linuxidc_log
等同于–follow=name –retry,根據(jù)文件名進(jìn)行追蹤,并保持重試,即該文件被刪除或改名后,如果再次創(chuàng)建相同的文件名,會繼續(xù)追蹤。
11、讀取壓縮日志而不解壓縮
服務(wù)器日志通常被gzip壓縮以節(jié)省磁盤空間。這給分析日志的開發(fā)人員或系統(tǒng)管理員帶來了一個問題。您可能必須將其scp到本地,然后提取它來訪問文件,因為有時您沒有提取日志的寫權(quán)限。
值得慶幸的是,在這種情況下,z命令可以幫助您。 z命令提供了用于處理日志文件(例如less,cat,grep等)的常規(guī)命令的替代方法。
這樣您就可以使用zless,zcat,zgrep等命令查看壓縮包的內(nèi)容,甚至不必顯式提取壓縮文件。
[linuxidc@localhost ~/www.linuxidc.com]$zcat linuxidc_log.zip | more
不解壓縮讀取壓縮文件
12、使用 less讀取文件
要查看文件的內(nèi)容,cat不是最佳選擇,特別是如果文件很大。 cat命令將在屏幕上顯示整個文件。
您可以使用Vi,Vim或其他基于終端的文本編輯器,但是如果您只想讀取文件,則 less 命令是更好的選擇。
less -N linuxidc.txt
//按下v鍵來編輯文件
//退出編輯器后,你可以繼續(xù)用less瀏覽了
您可以在更少的范圍內(nèi)搜索字詞,按頁移動,高亮與行號等。
13、使用 !$ 重新使用上一個命令中的最后一項
在許多情況下,使用上一個命令的參數(shù)很方便。
假設(shè)您必須創(chuàng)建一個目錄,然后進(jìn)入新創(chuàng)建的目錄。那么,您可以使用!$選項。
使用 !$
更好的方法您可以使用使用alt + . 。 在最后一個命令的選項之間來回移動的次數(shù)。
13、用!!重用當(dāng)前命令中的上一個命令。
您可以使用!!調(diào)用前面的整個命令。當(dāng)您必須運(yùn)行一個命令并意識到它需要root特權(quán)時,這一點特別有用。
一個快速 sudo !! 省去了很多擊鍵。
用!!重用當(dāng)前命令中的上一個命令。
15、使用別名來修正錯別字
您可能已經(jīng)知道Linux中的別名命令是什么。你能做的是,用它們來修正打字錯誤。
例如,您可能經(jīng)常將grep輸入為gerp。如果您以這種方式在您的bashrc中放置一個別名:
alias gerp=grep
這樣,您無需再次輸入命令。
16、在Linux終端中復(fù)制粘貼
這一點有點模棱兩可,因為它取決于Linux發(fā)???版和終端應(yīng)用程序。但通常,您應(yīng)該能夠使用以下快捷鍵復(fù)制粘貼命令:
- 選擇要復(fù)制的文本,然后右鍵單擊以粘貼(在Putty和其他Windows SSH客戶端中有效)
- 選擇要復(fù)制的文本,然后單擊鼠標(biāo)中鍵(滾動按鈕)以進(jìn)行粘貼
- Ctrl + Shift + C表示復(fù)制,Ctrl + Shift + V表示粘貼
17、終止正在運(yùn)行的命令/進(jìn)程
這可能太明顯了。如果有一個命令正在運(yùn)行運(yùn)行,并且您想退出該命令,則可以按Ctrl + C停止該正在運(yùn)行的命令。
18、清空文件而不刪除它
如果只想清空文本文件的內(nèi)容而不刪除文件本身,則可以使用類似于以下命令:
> 文件名
19、查找是否有包含特定文本的文件
在Linux命令行中有多種搜索和查找方法。但是,當(dāng)您只想查看是否有包含特定文本的文件時,可以使用以下命令:
grep -Pri 要搜索的字符串 路徑
我強(qiáng)烈建議您精通find命令。《如何使用find命令在Linux中查找文件》 見 http://www.haoyitu.cn/Linux/2018-07/153205.htm
20、對任何命令都可使用幫助命令(help)
最后我將用一個更明顯但卻非常重要的“技巧”來結(jié)束本文,即使用命令或命令行工具的幫助命令(help)。
幾乎所有的命令和命令行工具都帶有一個幫助頁面,顯示如何使用該命令。經(jīng)常使用幫助會告訴你這個工具/命令的基本用法。
比如bc命令的幫助:
[linuxidc@localhost ~/www.linuxidc.com]$bc -help
您最喜歡的Linux命令行技巧?
本文討論的技巧應(yīng)該可以在幾乎所有Linux發(fā)行版和shell中使用,而不需要安裝新工具。我還建議在Linux中使用alias命令將復(fù)雜的命令替換為簡單的命令??梢宰屇愎?jié)省很多時間。
你們應(yīng)該還有更多Linux命令技巧可以節(jié)省終端時間。那就請分享下吧,謝謝。