Linux下dislocate命令用法,在 Linux 中遨游手册页的海洋 | Linux 中国
原標(biāo)題:在 Linux 中遨游手冊(cè)頁的海洋 | Linux 中國
Linux 系統(tǒng)上的手冊(cè)頁可以做的不僅僅是提供特定命令的信息。它們可以幫助你發(fā)現(xiàn)你沒有意識(shí)到的命令。
https://linux.cn/article-12127-1.html
作者:Sandra Henry-stocker
譯者:Xingyu.Wang
手冊(cè)頁提供了關(guān)于 Linux 命令的基本信息,很多用戶經(jīng)常參考它,但手冊(cè)頁的內(nèi)容比我們很多人意識(shí)到的要多得多。
你總是可以輸入一個(gè)像 這樣的命令,然后得到 命令的工作原理的漂亮描述,但是探索你可能不知道的命令可能會(huì)更有啟發(fā)。例如,你可以使用 命令來幫助找到一些處理非常具有挑戰(zhàn)性的任務(wù)的命令,或者顯示一些選項(xiàng),這些選項(xiàng)可以幫助你以新的更好的方式使用你已經(jīng)知道的命令。
讓我們來瀏覽一些選項(xiàng),看看最終的結(jié)果是什么。
man 命令可以幫助你按主題查找命令。例如,如果你要找一個(gè)計(jì)算文件中的行數(shù)的命令,你可以提供一個(gè)關(guān)鍵字。在下面的例子中,我們把關(guān)鍵字 “count” 放在了引號(hào)中,并添加了空格,這樣我們就不會(huì)得到與 “accounts” 或 “accounting” 相關(guān)的命令,而是得到那些可以為我們做一些計(jì)算的命令。
$man-k' count '
anvil(8postfix)-Postfixsession countandrequest rate control
cksum(1)-checksumandcount the bytesinafile
sum(1)-checksumandcount the blocksinafile
timer_getoverrun(2)-getoverrun countfora POSIX per-process timer
為了顯示與新用戶賬戶相關(guān)的命令,我們可以嘗試使用這樣的命令。
$man-k"new user"
newusers(8)-updateandcreatenewusersinbatch
useradd(8)-create anewuserorupdatedefaultnewuser information
zshroadmap(1)-informal introduction to the zsh manualTheZshManual,…
需要說明的是,上面的第三項(xiàng)只是提到 “new users” 類似的內(nèi)容,并不是設(shè)置、刪除或配置用戶賬號(hào)的命令。 命令只是在命令描述中匹配了一些詞,作用很像 命令。注意上面列出的每個(gè)命令后面的括號(hào)中的數(shù)字。這些數(shù)字與包含這些命令的手冊(cè)頁的分區(qū)有關(guān)。
確定手冊(cè)頁的分區(qū)
命令的分區(qū)將其內(nèi)容劃分為不同的類別。要列出這些類別,請(qǐng)鍵入 ,并查看類似下面的描述。你的系統(tǒng)中很可能沒有第 9 分區(qū)的命令。
? 1 :可執(zhí)行程序或 shell 命令
? 2 :系統(tǒng)調(diào)用(內(nèi)核提供的函數(shù))
? 3 :庫調(diào)用(程序庫內(nèi)的函數(shù))
? 4 :特殊文件(通常在可以 /dev 中找到)
? 5 :文件格式和慣例,例如 /etc/passwd
? 6 :游戲
? 7 :雜項(xiàng)(包括宏包和約定),例如 (7)、 groff (7)
? 8 :系統(tǒng)管理命令(通常只由 root 用戶使用)
? 9 :內(nèi)核例程(非標(biāo)準(zhǔn))
手冊(cè)頁涵蓋了比我們通常認(rèn)為的“命令”更多的內(nèi)容。從上面的描述中可以看到,它們涵蓋了系統(tǒng)調(diào)用、庫調(diào)用、特殊文件等等。
下面的列表顯示了 Linux 系統(tǒng)中的手冊(cè)頁的實(shí)際存儲(chǔ)位置。這些目錄上的日期會(huì)有所不同,因?yàn)殡S著更新,其中一些分區(qū)會(huì)有新的內(nèi)容,而另一些則不會(huì)。
$ls-ld/usr/share/man/man?
drwxr-xr-x2root root98304Feb516:27/usr/share/man/man1
drwxr-xr-x2root root65536Oct2317:39/usr/share/man/man2
drwxr-xr-x2root root270336Nov1506:28/usr/share/man/man3
drwxr-xr-x2root root4096Feb410:16/usr/share/man/man4
drwxr-xr-x2root root28672Feb516:25/usr/share/man/man5
drwxr-xr-x2root root4096Oct2317:40/usr/share/man/man6
drwxr-xr-x2root root20480Feb516:25/usr/share/man/man7
drwxr-xr-x2root root57344Feb516:25/usr/share/man/man8
注意,為了節(jié)省空間,手冊(cè)頁文件一般都是 gzip 壓縮的。每當(dāng)你使用 命令時(shí), 命令會(huì)根據(jù)需要解壓。
$ls-l/usr/share/man/man1|head-10
total12632
lrwxrwxrwx1root root9Sep506:38[.1.gz->test.1.gz
-rw-r--r--1root root563Nov705:072to3-2.7.1.gz
-rw-r--r--1root root592Apr232016411toppm.1.gz
-rw-r--r--1root root2866Aug1410:36a2query.1.gz
-rw-r--r--1root root2361Sep915:13aa-enabled.1.gz
-rw-r--r--1root root2675Sep915:13aa-exec.1.gz
-rw-r--r--1root root1142Apr32018aaflip.1.gz
-rw-r--r--1root root3847Aug1410:36ab.1.gz
-rw-r--r--1root root2378Aug232018ac.1.gz
按分區(qū)列出的手冊(cè)頁
即使只看第 1 分區(qū)的前 10 個(gè)手冊(cè)頁(如上所示),你也可能會(huì)看到一些新的命令 —— 也許是 a2query 或 aaflip (如上所示)。
探索命令的更好策略是按分區(qū)列出命令,不查看文件本身,而是使用 命令向你顯示命令并提供每個(gè)命令的簡(jiǎn)要說明。
在下面的命令中, -s 1 指示 顯示第 1 分區(qū)中的命令信息。 -k . 使該命令對(duì)所有命令都有效,而不是指定一個(gè)特定的關(guān)鍵字;如果沒有這個(gè), 命令就會(huì)回過頭來問:“你想要什么手冊(cè)頁?”所以,使用關(guān)鍵字來選擇一組相關(guān)的命令,或者使用點(diǎn)來顯示一個(gè)分區(qū)中的所有命令。
$man-s1-k.
2to3-2.7(1)-Python2toPython3converter
411toppm(1)-convertSonyMavica.411image to ppm
as(1)-the portable GNU assembler.
baobab(1)-A graphical tool to analyze disk usage
busybox(1)-TheSwissArmyKnifeofEmbeddedLinux
cmatrix(1)-simulates the displayfrom"The Matrix"
expect_dislocate(1)-disconnectandreconnect processes
red(1)-line-oriented text editor
enchant(1)-a spellchecker
…
有多少手冊(cè)頁?
如果你對(duì)每個(gè)分區(qū)中有多少手冊(cè)頁感到好奇,可以使用以下命令按分區(qū)對(duì)它們進(jìn)行計(jì)數(shù):
$fornumin{1..8}
>do
>man-s $num-k.|wc-l
>done
2382
493
2935
53
441
11
245
919
確切的數(shù)量可能有所不同,但是大多數(shù) Linux 系統(tǒng)的命令數(shù)量差不多。如果我們使用命令將這些數(shù)字加在一起,我們可以看到運(yùn)行該命令的系統(tǒng)上有將近 7500 個(gè)手冊(cè)頁。有很多命令,系統(tǒng)調(diào)用等。
$fornumin{1..8}
>do
>num=`man -s $num -k . | wc -l`
>tot=`expr $num + $tot`
>echo$tot
>done
2382
2875
5810
5863
6304
6315
6560
7479<===total
閱讀手冊(cè)頁可以學(xué)到很多東西,但是以其他方式瀏覽手冊(cè)頁可以幫助你了解系統(tǒng)上可能不知道的命令。
作者: 選題: 譯者: 校對(duì):
本文由 原創(chuàng)編譯, 榮譽(yù)推出
責(zé)任編輯:
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Linux下dislocate命令用法,在 Linux 中遨游手册页的海洋 | Linux 中国的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。