1. history
當你在玩Linux的時候,如果你經常使用命令行來控制你的Linux系統,那么有效地使用命令歷史機制將會使效率獲得極大提升。
history是shell的內置命令,其內容在系統默認的shell的man手冊中。
一些用法:
history
[-c] [-d offset] [n]
history
-anrw [filename]
history
-ps arg [arg…]
-c: 清空命令歷史
-d
offset: 刪除歷史中指定的第offset個命令
n: 顯示最近的n條歷史
Linux系統當你在shell(控制臺)中輸入并執行命令時,shell會自動把你的命令記錄到歷史列表中,一般保存在用戶目錄下的.bash_history文件中,默認保存1000條。
-a: 追加本次會話新執行的命令歷史列表至歷史文件
-n: 讀歷史文件中未讀過的行到歷史列表
-r: 讀歷史文件附加到歷史列表
-w: 保存歷史列表到指定的歷史文件
-p: 展開歷史參數成多行,但不存在歷史列表中
-s: 展開歷史參數成一行,附加在歷史列表后
history顯示當前終端的歷史記錄
!! 重復執行上一條命令
!-n 重復執行倒數第n條命令
!n 重復執行第n條命令
ctrl+p 等于向上方向鍵,翻出上一條命令。
ctrl+n 等于向下方向鍵,翻出下一條命令。
ctrl+j 等于enter 執行當前命令
!:0 執行前一條命令(去除參數)
!string 重復前一個以“string”開頭的命令
!?string 重復前一個包含string的命令
!string:p 僅打印以string開頭的命令歷史,而不執行
!$:p 打印輸出 !$ (上一條命令的最后一個參數)的內容
!*:p 打印輸出 !*(上一條命令的所有參數)的內容
^string 刪除上一條命令中的第一個string
^string1^string2 將上一條命令中的第一個string1替換為string2
!:gs/string1/string2 將上一條命令中所有的string1都替換為string2
(PS:包含string1的內容也會變成string2)
ctrl-r來在命令歷史中搜索命令
(reverse-i-search)`’:
Ctrl+g:從歷史搜索模式退出
2. 調用歷史參數詳解
要重新調用前一個命令中最后一個參數:
!$ 表示
Esc, .(點擊Esc鍵后松開,然后點擊 . 鍵)
Alt+ .(按住Alt鍵的同時點擊 . 鍵)
command !^ : 利用上一個命令的第一個參數做cmd的參數
command !$ : 利用上一個命令的最后一個參數做cmd的參數
command !* : 利用上一個命令的全部參數做cmd的參數
command !:n : 利用上一個命令的第n個參數做cmd的參數
command !n:^ 調用第n條命令的第一個參數
command !n:$ 調用第n條命令的最后一個參數
command !n:m 調用第n條命令的第m個參數
command !n:* 調用第n條命令的所有參數
command !string:^ 從命令歷史中搜索以 string 開頭的命令,并獲取它的第一個參數
command !string:$ 從命令歷史中搜索以 string 開頭的命令,并獲取它的最后一個參數
command !string:n 從命令歷史中搜索以 string 開頭的命令,并獲取它的第n個參數
command !string:* 從命令歷史中搜索以 string 開頭的命令,并獲取它的所有參數
3. bash快捷鍵
Ctrl+L 清屏
Ctrl+O 執行當前命令,并重新顯示本命令
Ctrl+s 鎖定,但仍可以運行命令。
Ctrl+q 解鎖
Ctrl+C 強制結束
Ctrl+D 正常終止
Ctrl+Z 掛起(暫停)命令
Ctrl + a 光標移到命令行首,相當于Home
Ctrl + e 光標移到命令行尾,相當于End
Ctrl + f 光標向右移動一個字符
Ctrl + b 光標向左移動一個字符
Alt + f 向右移動一個單詞
Alt + b 向左移動一個單詞
Ctrl + xx 光標在命令行首和光標之間移動
Ctrl + u 刪除光標之前的內容
Ctrl + k 刪除光標這后的內容
Alt + r 清除全部內容
Ctrl + w 從光標處向左刪除至單詞首
Alt + d 從光標處向右刪除至單詞尾
Ctrl + d 刪除光標后的一個字符
Ctrl + h 刪除光標前的一個字符
Ctrl + y 將刪除的字符粘貼至光標后
Alt + c 從光標處開始向右更改為首字母大寫的單詞
Alt + u 從光標處開始,將右邊一個單詞更改為大寫
Alt + l 從光標處開始,將右邊一個單詞更改為小寫
Ctrl + t 交換光標處和之前的字符位置
Alt + t 交換光標處和之前的單詞位置
Alt + N 提示輸入指定字符后,重復顯示該字符N次(N表示具體的數字)
Ctrl-Shift-n 創建新窗口
Ctrl-Shift-q 關閉當前窗口
Ctrl-Shift-t 創建一個標簽頁
Ctrl-Shift-w 關閉一個標簽頁
Ctrl-PaUp/PgUn 切換到下一個/前一個標簽頁
Ctrl-Shift-c 復制選中的文本
Ctrl-Shift-v 把文本粘帖到當前光標處
4. Whatis
whatis命令用戶查詢一個命令執行什么功能,并將查詢結果打印到終端上。
whatis command 或 man -f command
(僅能提供命令基本的介紹。不提具體用法。)
Whatis是基于數據庫的查找
優點:檢索速度快
缺點:缺乏實時性
數據文件的位置:
CentOS6中位置:/var/cache/man/whatis
當輸入makewhatis命令后,whatis文件開始收集數據,并覆蓋原來的數據。因此,如果命令運行過程輸入Ctrl+C強制斷的話,whatis文件將變為不完整或者為空。此時將無法使用whitis命令
當完整的運行一次whatis后,文件又恢復完整。
CentOS7中位置: /var/cache/man/index.db
在CentOS7中收集數據的命令不是makewhatis了,而是mandb。
可以看到刪除index.db之后無法使用whatis命令。而運行mandb命令之后,index.db將被重建,whatis命令又可以使用了。
5. 獲取幫助
(1)help
help command命令用于顯示shell內部命令的幫助信息。help命令只能顯示shell內部的命令幫助信息。
help -d :顯示簡短描述
help -s :顯示用法的簡介
help -m :顯示較詳細的使用方法
(2)–help
–help用于外部命令。
(3)man
man是manual的縮寫,意為手冊、說明書。是由作者寫的最權威最詳細的幫助文檔。通過man command指令可以查看Linux中的指令幫助、配置文件幫助和編程幫助等信息。whatis所收集的數據庫就是來源于man。
輸入 man date,則出現如下圖信息:
在這個文檔中如果想搜索關鍵字,可以輸入:/+關鍵字 在man中搜索。
例如輸入/year:
則會顯示所有包含year的地方。
輸入q退出文檔。
man是在程序安裝的時候安裝的幫助文檔,可以在系統的目錄下找到,通過指令:ls /user/share/man我們可以看到很多man幫助文檔的存儲,我們從中看到有很多歌man#文件,linux的一些man指令文檔就存在于這些文件內,幾乎每個命令都有自己的man頁面。
man頁面根據類型不同,設置成不同的章節
例如passwd,它是一個命令,也有一個passwd是一個配置文件。
我們就需要調用不同的章節來分別查看。
當輸入man passwd時,默認進入前面的章節,即第1章節。(后面的數字就代表章節)
如果想看第5章節,則在前面加上對應的數字
即可顯示第5章節內容
關于man幫助的段落說明:
(4)使用less命令可以更方便的閱讀man命令。
命令格式:less [參數]文件
less 與 more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動,卻不能向后移動,而且 less 在查看之前不會加載整個文件。相比于more命令,less命令更加靈活強大一些,因此在這里就不介紹more了。
具體用法:
^f, ^F:向下翻屏
b,^b:向下翻屏
d,^d:向下翻半屏
u,^u:向上翻半屏
q:退出
G:翻至文件尾部
/KEYWORD:以KEYWORD為關鍵字,從當前位置向文件尾部搜索,不區分大小寫。
?KEYWORD:同上,以KEYWORD為關鍵字進行模糊查詢,從當前位置向文件尾部搜索,不區分大小寫。
n:下一個
N:上一個
原創文章,作者:T_endless,如若轉載,請注明出處:http://www.www58058.com/80892