@(Linux)[Linux命令, 幫助獲取]
在我們使用Linux操作系統(tǒng)的時候菇曲,經常會使用一些命令,但是由于時間長久的原因導致我們對于其使用方法的忘記抚吠。本文常潮,就是為了解決這個問題而生的,授之以魚不如授之以漁楷力。
1. 內建命令和外部命令
1.1 內建命令
內部命令:
- 實際上是shell程序的一部分喊式,其中包含的是一些比較簡單的linux系統(tǒng)命令,這些命令由shell程序識別并在shell程序內部完成運行萧朝,通常在linux系統(tǒng)加載運行時shell就被加載并駐留在系統(tǒng)內存中岔留。
- 內部命令是寫在bashy源碼里面的,其執(zhí)行速度比外部命令快检柬,因為解析內部命令shell不需要創(chuàng)建子進程献联。
- 比如:
exit
,history
何址,cd
里逆,echo
等。
escape@ubuntu:~$ type cd
cd is a shell builtin
1.2 外部命令
外部命令:
- 是linux系統(tǒng)中的實用程序部分用爪,因為實用程序的功能通常都比較強大原押,所以其包含的程序量也會很大,在系統(tǒng)加載時并不隨系統(tǒng)一起被加載到內存中偎血,而是在需要時才將其調用內存诸衔。
- 通常外部命令的實體并不包含在shell中盯漂,但是其命令執(zhí)行過程是由shell程序控制的。shell程序管理外部命令執(zhí)行的路徑查找笨农、加載存放宠能,并控制命令的執(zhí)行。
- shell程序搜尋可執(zhí)行程序文件的路徑定義在PATH環(huán)境變量中磁餐,使用
echo $PATH
來查看。 - 外部命令是在bash之外額外安裝的阿弃,通常放在固定目錄下诊霹。使用
type
來查看命令屬于內建命令或者外部命令,使用使用which
命令來查看渣淳,也可以使用whereis
命令來查找命令路徑脾还。 - 比如:
ls
、vi
等
escape@ubuntu:~$ type mount
mount is /bin/mount
2. 內建命令獲取幫助
格式
help COMMAND
用法
escape@ubuntu:~$ help echo
echo: echo [-neE] [arg ...]
Write arguments to the standard output.
2.1 hash命令
shell搜尋到的外部命令的路徑結果會緩存至kv(key-value)存儲中
命令選項
-
hash -d #
刪除指定命令緩存 -
hash -r
刪除所有命令緩存
2.2 history命令
管理命令歷史
- 登錄shell時入愧,會讀取命令歷史文件中記錄下的命令:~/.bash_history
- 登錄進shell后新執(zhí)行的命令只會記錄在緩存中鄙漏;這些命令會用戶退出時“追加”至命令歷史文件中
命令選項
-
history -a
: 追加本次會話新執(zhí)行的命令歷史列表至歷史文件中 -
history -d #
: 刪除歷史中指定的命令 -
history -c
: 清空命令歷史
快捷操作
-
!#
: 調用歷史中第#條命令 -
!string
:調用歷史中最近一個以string開頭的命令 -
!!
: 上一條命令
3. 外部命令獲取幫助
格式
COMMAND [OPTIONS...] [ARGUMENTS...]
用法
-
COMMAND --help
orCOMMAND -h
- 使用手冊:
man COMMAND
- 使用信息頁:
info COMMAND
- 程序自身的幫助文檔
- 程序官方文檔
- 發(fā)行版的官方文檔
3.1 man
手冊頁/usr/share/man
- man1: 用戶命令
- man2: 系統(tǒng)調用
- man3: C庫調用
- man4: 設備文件及特殊文件
- man5: 配置文件格式
- man6: 游戲
- man7: 雜項
- man8: 管理類的命令
注意有些關鍵在不止一個章節(jié)中存在幫助手冊,要查看指定章節(jié)中的手冊man # COMMAND
man命令的配置文件/etc/man.config
-
MANPATH /PATH/TO/SOMEWHERE
: 指明新的手冊文件搜索位置 -
man -M /PATH/TO/SOMEWHERE COMMAND
: 到指定位置下搜索COMMAND命令的手冊頁并顯示之
幫助手冊中的段落說明
- NAME
- SYNOPSIS
- DESCRIPTION
- OPTIONS
- EXAMPLES
- AUTHOR
- REPORTING BUGS
- SEE ALSO
操作方法
-
Space
,^V
,^f
,^F
: 向文件尾翻屏 -
b
,^B
: 向文件首部翻屏 -
d
,^D
: 向文件尾部翻半屏 -
u
,^U
: 向文件首部翻半屏 -
RETURN
,^N
,e
,^E
orj
or^J
: 向文件尾部翻一行 -
y
or^Y
o^P
ork
or^K
:向文件首部翻一行 -
q
: 退出 -
#
:跳轉至第#行 -
1G
: 回到文件首部 -
G
:翻至文件尾部 -
文本搜索
-
/KEYWORD
:以KEYWORD指定的字符串為關鍵字棺蛛,從當前位置向文件尾部搜索怔蚌,不區(qū)分字符大小寫 -
?KEYWORD
:以KEYWORD指定的字符串為關鍵字,從當前位置向文件首部搜索旁赊,不區(qū)分字符大小寫 -
n
: 跟搜索命令同方向桦踊,下一個 -
N
:跟搜索命令反方向,上一個
-
3.2 info
格式
info COMMAND