常用快捷鍵
Tab鍵: 自動(dòng)補(bǔ)全,包括補(bǔ)全命令,補(bǔ)全目錄、補(bǔ)全命令參數(shù)等。
Ctrl+c: 強(qiáng)行終止當(dāng)前程序,可以放心它并不會(huì)使終端退出。
Ctrl+d : 鍵盤輸入結(jié)束或退出終端
Ctrl+s : 暫停當(dāng)前程序,暫停后按下任意鍵恢復(fù)運(yùn)行
Ctrl+z : 將當(dāng)前程序放到后臺(tái)運(yùn)行,恢復(fù)到前臺(tái)為命令 fg
Ctrl+a : 將光標(biāo)移至輸入行頭,相當(dāng)于 Home 鍵
Ctrl+e :將光標(biāo)移至輸入行末,相當(dāng)于 End 鍵
Ctrl+k :刪除從光標(biāo)所在位置到行末
Alt+Backspace :向前刪除一個(gè)單詞
Shift+PgUp : 將終端顯示向上滾動(dòng)
Shift+PgDn : 將終端顯示向下滾動(dòng)
方向上鍵 ↑: 恢復(fù)你之前輸入過(guò)的命令
使用通配符
通配符是一種特殊語(yǔ)句,主要有星號(hào)(*)和問(wèn)號(hào)(?),用來(lái)對(duì)字符串進(jìn)行模糊匹配(比如文件名、參數(shù)名)。
當(dāng)查找文件夾時(shí),可以使用它來(lái)代替一個(gè)或多個(gè)真正字符;當(dāng)不知道真正字符或者懶得輸入完整名字時(shí),常常使用通配符代替一個(gè)或多個(gè)真正字符。
終端里面輸入的通配符是由 Shell 處理的,不是由所涉及的命令語(yǔ)句處理的,它只會(huì)出現(xiàn)在命令的“參數(shù)值”里(它不能出現(xiàn)在命令名稱里, 命令不記得,那就用 Tab 補(bǔ)全)。
當(dāng) Shell 在“參數(shù)值”中遇到了通配符時(shí),Shell 會(huì)將其當(dāng)作路徑或文件名在磁盤上搜尋可能的匹配:若符合要求的匹配存在,則進(jìn)行代換(路徑擴(kuò)展);否則就將該通配符作為一個(gè)普通字符傳遞給“命令”,然后再由命令進(jìn)行處理。
總之,通配符實(shí)際上就是一種 Shell 實(shí)現(xiàn)的路徑擴(kuò)展功能。在通配符被處理后, Shell 會(huì)先完成該命令的重組,然后繼續(xù)處理重組后的命令,直至執(zhí)行該命令。
下面看幾個(gè)使用通配符等例子:
先使用 touch 命令創(chuàng)建 2 個(gè)文件,后綴都為 txt:
$ touch abcde.txt fghijk.txt
假如你忘了這兩個(gè)文件的文件名,現(xiàn)在想在一大堆文件中找到這兩個(gè)文件,就可以使用通配符:
$ ls *.txt
結(jié)果:
diego@diego-ThinkPad-T540p:~$ ls *.txt
abcde.txt fghijk.txt
在創(chuàng)建文件的時(shí)候,如果需要一次性創(chuàng)建多個(gè)文件,比如:“l(fā)ove_1_linux.txt,love_2_linux.txt,... love_10_linux.txt”。在 Linux 中十分方便:
$ touch love_{1..10}_linux.txt
結(jié)果:
diego@diego-ThinkPad-T540p:~$ touch love_{1..10}_linux.txt
diego@diego-ThinkPad-T540p:~$ ls *.txt
love_10_linux.txt love_3_linux.txt love_6_linux.txt love_9_linux.txt
love_1_linux.txt love_4_linux.txt love_7_linux.txt
love_2_linux.txt love_5_linux.txt love_8_linux.txt
** Shell 常用通配符:**
符號(hào) | 含義 |
---|---|
* | 匹配 0 或多個(gè)字符 |
? | 匹配任意一個(gè)字符 |
[list] | 匹配 list 中的任意單一字符 |
[!list] | 匹配除 list 中的任意單一字符以外的字符 |
[c1-c2] | 匹配 c1-c2 中的任意單一字符 如:[0-9] [a-z] |
{string1,string2,...} | 匹配 string1 或 string2 (或更多)其一字符串 |
{c1..c2} | 匹配 c1-c2 中全部字符 如{1..10} |
使用 man 獲取幫助
在 Linux 環(huán)境中,如果你遇到困難,可以使用 man 命令,它是 Manual pages 的縮寫。
Manual pages 是 UNIX 或類 UNIX 操作系統(tǒng)中在線軟件文檔的一種普遍的形式, 內(nèi)容包括計(jì)算機(jī)程序(包括庫(kù)和系統(tǒng)調(diào)用)、正式的標(biāo)準(zhǔn)和慣例,甚至是抽象的概念。用戶可以通過(guò)執(zhí)行 man 命令調(diào)用手冊(cè)頁(yè)。
你可以使用如下方式來(lái)獲得某個(gè)命令的說(shuō)明和使用方式的詳細(xì)介紹:
$ man <command_name>
比如你想查看 man 命令本身的使用方式,你可以輸入:
man man
所有的手冊(cè)頁(yè)遵循一個(gè)常見(jiàn)的布局,為了通過(guò)簡(jiǎn)單的 ASCII 文本展示而被優(yōu)化,而這種情況下可能沒(méi)有任何形式的高亮或字體控制。一般包括以下部分內(nèi)容:
- NAME(名稱)
該命令或函數(shù)的名稱,接著是一行簡(jiǎn)介。
- SYNOPSIS(概要)
對(duì)于命令,正式的描述它如何運(yùn)行,以及需要什么樣的命令行參數(shù)。對(duì)于函數(shù),介紹函數(shù)所需的參數(shù),以及哪個(gè)頭文件包含該函數(shù)的定義。
- DESCRIPTION(說(shuō)明)
命令或函數(shù)功能的文本描述。
- EXAMPLES(示例)
常用的一些示例。
- SEE ALSO(參見(jiàn))
相關(guān)命令或函數(shù)的列表。
也可能存在其它部分內(nèi)容,但這些部分沒(méi)有得到跨手冊(cè)頁(yè)的標(biāo)準(zhǔn)化。常見(jiàn)的例子包括:OPTIONS(選項(xiàng)),EXIT STATUS(退出狀態(tài)),ENVIRONMENT(環(huán)境),BUGS(程序漏洞),F(xiàn)ILES(文件),AUTHOR(作者),REPORTING BUGS(已知漏洞),HISTORY(歷史)和 COPYRIGHT(版權(quán))。
通常 man 手冊(cè)中的內(nèi)容很多,你可能不太容易找到你想要的結(jié)果,不過(guò)幸運(yùn)的是你可以在 man 中使用斜杠來(lái)搜索:/<你要搜索的關(guān)鍵字>。
查找完畢后你可以使用 n 鍵切換到下一個(gè)關(guān)鍵字所在處,shift+n 為上一個(gè)關(guān)鍵字所在處。
使用Space(空格鍵)翻頁(yè),Enter(回車鍵)向下滾動(dòng)一行,或者使用 j,k(vim 編輯器的移動(dòng)鍵)進(jìn)行向前向后滾動(dòng)一行。
按下 h 鍵為顯示使用幫助(因?yàn)?man 使用 less 作為閱讀器,實(shí)為 less工具的幫助),按下 q 退出。
想要獲得更詳細(xì)的幫助,你還可以使用 info 命令,不過(guò)通常使用 man 就足夠了。如果你知道某個(gè)命令的作用,只是想快速查看一些它的某個(gè)具體參數(shù)的作用,那么你可以使用 --help 參數(shù),大部分命令都會(huì)帶有這個(gè)參數(shù),如:
$ ls --help