我正在為我正在打包的程式編寫手冊頁。如何顯示我建立的線上幫助頁文件,以檢查它是否正確?有沒有辦法將我的文件直接傳遞給man
命令,而不是讓它按名稱搜尋已安裝的手冊頁?
我嘗試做類似man myprog.1
和 之類的事情man < myprog.1
,但在這兩種情況下我都收到錯誤訊息,指出找不到手冊頁。
答案1
man
有一個讀取本地文件的選項:-l
-l, --local-file
啟動「本地」模式。格式化並顯示本機手冊文件,而不用搜尋系統的手冊集合。每個手冊頁參數都將被解釋為正確格式的 nroff 原始檔。不產生 cat 檔。
如果“-”被列為參數之一,則將從標準輸入取得輸入。如果未使用此選項,且 man 無法找到所需的頁面,則在顯示錯誤訊息之前,它會嘗試像提供此選項一樣操作,使用名稱作為檔案名稱並尋找完全匹配的內容。
因此,您可以透過以下方式預覽正在進行的工作:
man -l /path/to/manfile.1
答案2
對於早於該-l
選項的系統,「老派」方式是
nroff -man filename | more -s
答案3
我簡單地用過
man ./path/to/man.1
您需要在路徑中包含斜杠,否則它將搜尋系統目錄。適用於我擁有的 Linux 和 OS X 系統(後者沒有-l
)。
$ cd /tmp
$ cp /usr/share/man/man1/ls.1 .
$ man ls.1
No manual entry for ls.1
$ man ./ls.1 # works
答案4
在 Solaris 上,-M
切換到man
將覆蓋線上幫助頁的搜尋路徑:-
man -M path/to/man myprog
您的線上說明頁檔案必須駐留在與該部分和標記語言相對應的適當子目錄中,例如:第path/to/man/man1/myprog.1
1 部分中的 nroff-線上說明頁。