Linux 終端不僅是一個(gè)鍵入命令的地方。如若你能熟諳這些基礎(chǔ)技巧,那么你會(huì)在絕大多數(shù) Linux 發(fā)行版的默認(rèn)使用的 Bash shell中游刃有余。
這是特供給初級用戶升級打怪時(shí)不能忘記攜帶的七種武器——
1.Tab 補(bǔ)全
這樣能節(jié)省時(shí)間,并且對于輸入那些你不很確定其具體名稱的文件和命令來說很方便。比如,當(dāng)前目錄下有一個(gè)名為“really long file name”的文件,你想要?jiǎng)h除它。你可以輸入完整的文件名,但是你必須確保正確地輸入了空格和每個(gè)字母。若當(dāng)前目錄下還有許多以字母“r”開頭的文件,(如果你沒有正確地輸入字符) Bash 將不知道你想要?jiǎng)h除哪一個(gè)文件。
如果在當(dāng)前目錄下存在著另一個(gè)名為“really very long file name”的文件,你敲擊了Tab鍵。Bash 將為所有以“r”開頭的文件自動(dòng)補(bǔ)充“really ”部分。此時(shí)繼續(xù)敲擊Tab鍵,你將得到匹配所有文件名的列表。
2.管道機(jī)制
這種機(jī)制允許你把一條命令的輸出傳送到另一條命令。按照 UNIX 哲學(xué),每個(gè)程序都足夠小,只做一件事并將之做到最好。例如,ls命令列出當(dāng)前目錄下的所有文件,grep命令搜索輸入其中的指定檢索項(xiàng)。
你可以通過管道機(jī)制(|字符)把二者結(jié)合起來,在當(dāng)前目錄下搜索文件。以下給出的命令(在當(dāng)前文件夾下)搜索關(guān)鍵字為“word”的文件:
ls | grep word
3.通配符
“*”(星號(hào))字符是一種匹配任意長度字符的通配符。比如,你想刪除當(dāng)前文件夾下名為“really long file name”和“really very long file name”的兩個(gè)文件,你可以運(yùn)行以下命令:
rm really*name
這條命令會(huì)刪除所有以“really”開頭以“name”結(jié)尾的文件。但是,如果你運(yùn)行的是 rm * 這條命令,你將會(huì)刪除文件夾下的所有文件。(使用通配符時(shí)要小心,尤其是你的rm沒有-f確認(rèn)時(shí)!)
4.輸出重定向
“>”字符可以把一條命令的輸出重定向到一個(gè)文件或另一條命令。比如,下面這行命令執(zhí)行完 ls 后會(huì)列出當(dāng)前文件夾下的所有文件,其結(jié)果不是在終端顯示,而是輸出到當(dāng)前文件夾下一個(gè)名為“file1”的文件中去:
ls > file1
5.歷史記錄
Bash 能記住你以前輸入過的命令,上、下方向鍵可以逐行調(diào)出它們。使用 history 命令打印歷史記錄,以管道機(jī)制 grep 選擇性地輸出你想要的結(jié)果。
~
.
..
“~”,也叫做波浪符,用來表示當(dāng)前用戶的主目錄。相比通過 cd /home/name 到達(dá)你的主目錄,你可以輸入 cd ~ 來達(dá)到相同效果。這點(diǎn)也可以在相關(guān)路徑上使用:比如 cd ~/Desktop 能夠到達(dá)當(dāng)前用戶的 Desktop 目錄。
同樣,“.”代表當(dāng)前目錄,“..”代表當(dāng)前目錄的父目錄。使用 cd .. 可以返回上一級目錄。它們也可以用在相關(guān)路徑上,舉例說明:你當(dāng)前處在 Desktop 文件夾下,通過 cd ../Documents 命令,你可以轉(zhuǎn)到與 Desktop 共有同一父文件夾的 Documents 文件夾去。
(譯注:“-”代表前一個(gè)目錄,cd – 可以返回到前一個(gè)工作目錄。)
6.后臺(tái)命令
Bash 默認(rèn)情況下會(huì)在當(dāng)前終端下執(zhí)行你鍵入的每條命令。通常這樣是沒有問題的,但是如果你想要在啟動(dòng)某個(gè)應(yīng)用后繼續(xù)使用終端呢?通過輸入 firefox 啟動(dòng)火狐瀏覽器,你的終端將被錯(cuò)誤提示等各種信息輸出占據(jù),直到你關(guān)閉火狐瀏覽器為止。在 Bash 中你可以通過在命令結(jié)尾添加“&”操作符來后臺(tái)執(zhí)行程序。
firefox &
7.條件執(zhí)行
Bash 也可以連續(xù)執(zhí)行兩條命令。 第二條命令僅在第一條命令成功執(zhí)行后才會(huì)開始執(zhí)行。如要如此,你可以通過鍵入“&&”,也就是兩個(gè)“&”字符進(jìn)行分隔,在同一行輸入兩條命令。下面給出的命令會(huì)在等待 5 秒后運(yùn)行 gnome-screenshot 工具:
sleep 5 && gnome-screenshot
-
Linux
+關(guān)注
關(guān)注
87文章
11230瀏覽量
208933
原文標(biāo)題:成為 Linux 終端高手的七種武器
文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論