linux基礎之幫助文檔檢視-2014.2.11
---常用指令
第一個man:相關指令whatis
1,man手冊查找格式
-輸入 ? 鍵,向前查找,如 ?-h ,将會搜尋含有“-h”的行
-輸入 / 鍵,向後查找,如 /-k ,将會向後搜尋“-k”的行
按 N或者n(下一個)來進行上一個下一個相關比對項檢視。
2,man手冊存放的位置
可以通過manpath指令來檢視manpage的位置
3,man手冊頁入口
1 使用者指令 2 系統 3 程式庫 4 裝置 5 檔案系統
6 遊戲 7 雜項 8 系統指令 9 核心指令
一般用到的項為:1,5,8
4,一般用man檢視一個指令的幫助文檔的時候,可以通過whatis檢視一下該指令在man幫助文檔中的入口,一條指令可能有多個man手冊頁入口(注:在使用whatis的時候如果linux計算機開機70分鐘,那麼你可以自己随意使用了,如果linux計算機剛剛啟動,那麼需要執行makewhatis指令來編譯一下,否則無法使用whatis指令)
[root@localhost ~]# whatis rm
rm (1p) - remove directory entries
rm (1) - remove files or directories
[root@localhost ~]# whatis passwd
passwd (1) - update user's authentication tokens
passwd (5) - password file
passwd (rpm) - The passwd utility for setting/changing passwords using PAM
passwd [sslpasswd] (1ssl) - compute password hashes
在用man查詢rm或者passwd的指令的時候,可以輸入:
man 5 passwd //在入口為檔案系統去查詢passwd的幫助文檔
man 1 passwd //在入口為使用者指令去查詢passwd的幫助文檔
man 1/1p rm
第二個:help: 相關指令type,which
1,首先解釋一下内部指令和外部指令
簡單來說,在linux系統中有存儲位置的指令為外部指令;
沒有存儲位置的為内部指令,可以了解為内部指令嵌入在linux的shell中,是以看不到。
2,外部指令的幫助文檔使用help的格式為:指令 --help
如:passwd --help
内部指令的幫助文檔使用help的格式為:help -指令
如:help cd
3,type來判斷到底為内部指令還是内部指令
如:
[root@localhost ~]# type help //檢視help指令的内外類型
help is a shell builtin //可以看到help為内部指令
[root@localhost ~]# type passwd //檢視passwd這條指令是否在linux系統中存在
passwd is /usr/bin/passwd //可以看到passwd的存儲位置,是以存在,為外部指令
[root@localhost ~]# type cd
cd is a shell builtin
那麼passwd即為外部指令,那麼cd為内部指令
4,使用which指令查找可執行檔案(外部指令、腳本)
-由于which指令解釋太長,是以另起爐竈了
4-1,which可搜尋的範圍由環境變量PATH決定,通常情況下,管理者與普通使用者的PATH變量是不同的,可分别以root使用者、普通使用者test登入後執行echo $PATH 檢視。
[root@localhost ~]# su - root
[root@localhost ~]# su - test //切換到test使用者
[test@localhost ~]$ echo $PATH //檢視test使用者的環境變量
/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/test/bin
[test@localhost ~]$ exit
logout
[root@localhost ~]# echo $PATH //檢視root使用者的環境變量
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost ~]#
4-2,用which檢視mkdir和cp指令的執行程式位置:
[root@localhost ~]# which mkdir //mkdir指令存儲的位置
/bin/mkdir
[root@localhost ~]# which cp //cp指令存儲的位置
alias cp='cp -i'
/bin/cp
從上述結果可以看到,which的輸出結果包括了指令别名。這是因為Linux為了友善使用者使用,設定了which别名以添加别名搜尋所緻。
4-3,下面取消别名來檢視which cp指令的結果
[root@localhost ~]# alias which //檢視which的别名其實相當于下面的綠色的一行指令組合
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@localhost ~]# /usr/bin/which mkdir //隻查找第一目标
[root@localhost ~]# /usr/bin/which cp
/bin/cp
4-4,which的參數-a
which查詢的路徑為$PATH,那麼當查詢到第一個指令所在的目錄後就會直接顯示,那麼如果後面的目錄中也存在該指令,那麼将不會顯示,是以,需要使用-a參數。
[root@localhost ~]#which -a mkdir //查找所有目标
/usr/bin/mkdir
4-5,由于内部指令是内建在/bin/bash解釋器中的指令,并沒有獨立的可執行檔案存在,是以嘗試用which來搜尋是找不到的。例如,用which找cd、help等内部指令時會提示找不到結果
[root@localhost ~]# which cd //檢視内部指令cd存在的位置
/usr/bin/which: no cd in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) //可以看到,是不存在的
[root@localhost ~]# which help
/usr/bin/which: no help in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
注:一般用help指令檢視内部指令!!!
這是最基本的linux幫助指令,雖然簡單,但是用法常被搞混,本來which這個指令打算拿到whereis、which、whatis、locate指令一塊說,又怕給自己搞迷了,whatis和which就現在這裡搞了!
本文轉自 murongqingqqq 51CTO部落格,原文連結:http://blog.51cto.com/murongqingqqq/1358244