Sự khác biệt giữa `man` và` man (#)` là gì?


31

Chỉ thấy ai đó tham khảo man 7 regextrên Stackoverflow. Tôi đã thử man regexvà có đầu ra rất giống nhau - dường như có sự khác biệt nhỏ.

Vậy số 7 huyền diệu này là gì? Tìm kiếm man 7 unixtrên Google cho tôi nhiều kết quả bí ẩn hơn như UNIX (7) ...

Câu trả lời:


33

Trong khoảng UNIX(7)

Để trả lời câu hỏi của bạn về "UNIX (7)", đây là quy ước chuẩn của câu nói "Trang con người cho UNIX trong phần 7 (linh tinh)".

Để mở một trang như thế init(8), bạn sẽ sử dụng lệnh này : man 8 init.


man regex đấu với man 7 regex

Để trả lời câu hỏi của bạn về 'sự khác biệt tinh tế' giữa man regexman 7 regex:

mantheo mặc định sẽ mở trang có số phần thấp nhất . Trong trường hợp này, đó là phần 3 (Thư viện gọi). Mở trang từ phần 7 (Khác) khá khác nhau.

Các trang trong các phần khác nhau giải quyết những điều khác nhau, mặc dù trong trường hợp này chúng giống nhau, hãy xem xét apt:

man -f apt:

apt (8)              - Advanced Package Tool
apt (1)              - annotation processing tool

Trong ví dụ này, apttừ phần 8 (Các lệnh quản trị hệ thống) hoàn toàn không liên quan đến trang từ phần 1 (Các chương trình thực thi hoặc các lệnh shell).

Để tham khảo trong tương lai, sử dụng man -f PAGE_NAMEđể định vị tất cả các trang có tên đó trong tất cả các phần. Sau đó, bạn có thể mở một trang từ phần bạn muốn man SECTION PAGE_NAME.

Phần trang

Các phần trang khác nhau như sau và có thể được tìm thấy từ man man:

  1. Các chương trình thực thi hoặc các lệnh shell
  2. Các cuộc gọi hệ thống (các chức năng được cung cấp bởi kernel)
  3. Các cuộc gọi thư viện (các chức năng trong thư viện chương trình)
  4. Các tập tin đặc biệt (thường được tìm thấy trong /dev)
  5. Định dạng tệp và quy ước, vd /etc/passwd
  6. Trò chơi
  7. Khác (bao gồm cả gói vĩ mô và công ước), ví dụ man(7),groff(7)
  8. Các lệnh quản trị hệ thống (thường chỉ dành cho root)
  9. Thói quen hạt nhân [Không chuẩn]

14

Số phần

mansẽ hiển thị trang chủ từ bất kỳ phần nào, man 7sẽ hiển thị trang chủ từ phần 7. Vì vậy, ở đây 7 đề cập đến phần của lệnh cụ thể mà bạn đang tìm kiếm trang hướng dẫn.

Một phần, nếu được cung cấp, sẽ hướng con người chỉ nhìn vào phần đó của hướng dẫn.


Các phần

Xem bảng sau để biết số phần của hướng dẫn sử dụng, theo sau là các loại trang mà chúng chứa.

1: Các chương trình thực thi hoặc lệnh shell

2: Các cuộc gọi hệ thống (các chức năng được cung cấp bởi kernel)

3: Thư viện cuộc gọi (chức năng trong thư viện chương trình)

4: Các tệp đặc biệt (thường được tìm thấy trong / dev)

5: Định dạng và quy ước tệp, ví dụ / etc / passwd

6: Trò chơi

7: Khác (bao gồm các gói và quy ước vĩ mô), ví dụ: man (7), groff (7)

8: Các lệnh quản trị hệ thống (thường chỉ dành cho root). Tổng quan về các chủ đề, quy ước và giao thức khác nhau, tiêu chuẩn thiết lập nhân vật và những thứ linh tinh khác.

9: Các thường trình nhân [Không chuẩn]


Các lệnh trong nhiều phần

Trong hầu hết các trường hợp, bạn sẽ muốn sử dụng manlệnh mà không cần thêm n . Tuy nhiên, trong một số trường hợp, một lệnh sẽ xuất hiện trong nhiều phần. Ví dụ: nếu bạn phát lệnh man open, bạn lấy trang man cho openvt từ phần 1. Nhưng nếu bạn cần xem trang man để mở dưới dạng lệnh C (hoặc gọi hệ thống, theo bảng trên), bạn cần phát hành man 2 open.

Một ví dụ rất giống nhau sẽ là man printfman 3 printf. Vui lòng phát lệnh và tự mình xem sự khác biệt trong đầu ra.


Vấn đề của bạn về man 7 unix(UNIX (7))

Vì vậy, UNIX (7) có nghĩa là nó thuộc về phần 7.


Phần nào sẽ được hiển thị theo mặc định nếu tôi không cung cấp số phần?

Hành động mặc định là tìm kiếm trong tất cả các phần có sẵn, theo thứ tự được xác định trước và chỉ hiển thị trang đầu tiên được tìm thấy, ngay cả khi trang tồn tại trong một số phần.


Làm thế nào để tôi biết số phần của một lệnh?

Nếu bạn cần tìm hiểu phần nào một thuật ngữ / lệnh rơi vào man -k(tương đương với lệnh apropos). Vì vậy, man -k printf sẽ tìm kiếm các mô tả ngắn và tên trang thủ công cho từ khóa printf như biểu thức thông thường. In ra bất kỳ trận đấu. (Tương đương apropos -r printf). Ban hành lệnh, xem tấn bạn nhận được. Nếu cần tránh các kết hợp chuỗi con, (ví dụ: nó sẽ hiển thị sprintf nếu bạn chạy man -k printf), vì vậy bạn cần sử dụng ^termđể giới hạn nó, như dưới đây,

man -k '^printf'
Printf (3o)          - Formatted output functions.
printf (1)           - format and print data
printf (3)           - formatted output conversion

Lệnh liên quan

Một lệnh liên quan aproposnhư được chỉ ra ở trên, tìm kiếm các tên và mô tả trang thủ công. Nếu bạn không chắc chắn trang hướng dẫn nào bạn đang tìm kiếm nhưng có ý tưởng chung, hãy sử dụng lệnh này.


Nhưng tài liệu cho regexkhông có 7 phần ...
Aditya MP

@adityamenon Xin vui lòng xem câu trả lời cập nhật, nó đã được đăng trước khi hoàn thành.
Masroor

Tôi thấy - vì vậy một "Mục" ở đây có nghĩa là "phân loại chương trình".
MP Aditya

@adityamenon Đúng rồi, tôi sẽ thấy thoải mái hơn với thuật ngữ bạn đang sử dụng.
Masroor

Cụ thể, "phần" ở đây có nghĩa là "phần của Sổ tay", như thể tất cả các trang của người đàn ông nằm trong một hướng dẫn được in (dày)
Jonathan Callen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.