Làm cách nào để tạo danh sách tất cả các trang man có sẵn trên một hệ thống?
Làm cách nào để tạo danh sách tất cả các trang man có sẵn trên một hệ thống?
Câu trả lời:
Sử dụng:
apropos .
hoặc là:
man -k .
trong đó .
một regex có nghĩa là: "bất kỳ nhân vật".
apropos
).
$ man -k . -s <section-NR>
Ví dụ để hiển thị tất cả các trang 2 phần :
$ man -k . -s 2
man 2 -k '.'
sẽ làm việc như là tốt. Nhưng nó không
Đây là sở thích của tôi:
whatis -r .
Nếu bạn chỉ muốn xem tất cả các trang man trong một phần cụ thể, hãy sử dụng -s
cờ.
Ví dụ: nếu bạn chỉ muốn lấy danh sách tất cả các trang man cho tất cả các lệnh thực thi (phần 1):
whatis -s 1 -r .
# Shell script to list pathname of all available man pages
mandirs="\`man -w | sed 's/:/ /g'\`"
find $mandirs -type f
Điều này tạo ra một danh sách tất cả các tệp man, sử dụng danh sách các thư mục man được tạo bởi "man -w", tuy nhiên, giải pháp bất kỳ ký tự-regex của cYrus là tốt hơn nhiều, mặc dù vậy, để có được một danh sách rõ ràng chỉ trang tên:
apropos . | awk '{print $1}'
hoặc là
man -k . | awk '{print $1}'
sort -u
.
man -k . | awk '{print $1,$2}'
giữ phần
Tìm trong các đường dẫn được liệt kê trong /etc/man.config
, với các thư mục bổ sung như được thêm bởi FHS
hoặc FSSTND
chỉ thị cho phù hợp.
/etc/manpath.config
và $MANPATH
là null.
Trên macOS, bạn có thể sử dụng
man -k .
hoặc là
apropos .
hoặc là
whatis .
Tuy nhiên, trên hệ điều hành MacOS, các man -k
, apropos
và whatis
lệnh không hỗ trợ lọc theo phần.
Vì vậy, bạn có thể sử dụng các đường ống sau đây để làm điều đó
man -k . | grep \(1\) | less
Bạn có thể thay thế 1
bằng phần thủ công bạn chọn.
apropos -s 1 .
để giới hạn nó trong phần 1 (lệnh người dùng), ví dụ.