เครื่องหมายวงเล็บและตัวเลขหลังคำสั่ง Unix หรือฟังก์ชัน C หมายถึงอะไร


224

ฉันเห็นวงเล็บและตัวเลขหลังจากคำสั่งในฟังก์ชัน Unix หรือ Linux หรือ C

ตัวอย่างเช่น: man (8), ftok (2), mount (8), เป็นต้น

สิ่งเหล่านี้หมายความว่าอย่างไร ฉันเห็นพวกเขาเป็นมนุษย์เช่นกัน


คำตอบ:


221

ส่วน Manpage

  1. คำสั่ง UNIX ทั่วไปที่ผู้ใช้ทุกคนสามารถใช้ได้ เช่นls(1)
  2. การเรียกระบบ Unix และ C เช่น mmap(2)
  3. C ไลบรารีรูทีนสำหรับโปรแกรม C เช่น system(3)
  4. ไฟล์พิเศษเช่น sudoers(4)
  5. รูปแบบไฟล์ระบบเช่น lmhosts(5)
  6. เกมเช่น fortune(6)
  7. เบ็ดเตล็ดเช่น regex(7)
  8. คำสั่งการบริหารระบบที่รันโดยรูทเท่านั้นเช่น iwconfig(8)
  9. (เฉพาะ Linux) เช่นksoftirqd(9)

เหตุผลที่อยู่เบื้องหลังส่วนคือมีสิ่งต่าง ๆ ที่ใช้ร่วมกันหน้าคู่มือ - mkdir(1)เป็นคำสั่งที่ใช้ในการสร้างไดเรกทอรีในขณะที่mkdir(2)การเรียกระบบที่สามารถใช้ในการสร้างไดเรกทอรีในโปรแกรม C ดังนั้นส่วนต่าง ๆ

ข้อเขียนอ้างอิง[1,2] (ตามที่แนะนำ):
http://www.gsp.com/support/man/ - หน้า FreeBSD ที่จัดเรียงตามส่วน
http://manpages.unixforum.co.uk/man-pages/ linux / suse-linux-10.1 / - SUSE manpages จัดเรียงตามส่วน
http://www.december.com/unix/ref/mansec.html - ยังมีตารางอีกส่วนสำหรับ manpage พื้นฐานเริ่มต้นของรายการ (ดูการแก้ไขโพสต์เก่าสำหรับรายละเอียด)

[1] คำอธิบายและตัวอย่างเป็นสิ่งที่เกิดขึ้นเองในหัวของฉันสำหรับเรื่องนี้
[2] ไม่ใช่ว่ามันฟังดูเป็นเรื่องวิชาการ แต่การขออ้างอิงเป็นหนึ่งในสิ่งที่ชะลอการเติบโตของวิกิพีเดีย คลางแคลงพยายามที่จะให้ผู้อื่นอ้างอิงทุกอย่างและผู้ให้ข้อมูลบางคนเพิ่งได้รับวิธีรำคาญเกินไปที่จะตอบอะไรเพิ่มเติมไม่ใช่ว่าคนที่พยายามเพิ่มสิ่งที่ไร้ประโยชน์ / ไม่มีมูลนั้นจะถูกลบออกจากสระอย่างถูกต้อง ไปยังส่วนเพิ่มเติมของเนื้อหาไม่ได้ลบ ... )


5
เกม (6) มีส่วนของตัวเอง!
Jaywalker

5
จริงๆแล้วมันเป็นเหมือนโปรแกรมตลก ๆมากกว่าเกม ซีซาร์ (6) และโชคลาภ (6) อยู่ที่ตลกที่สุด .... และถ้าคุณคิด BCD (6) เป็นเกม ... เอาล่ะฉันต้องการวางป้าย guru ยูนิกซ์กับคุณ
bubu

25
ในการแสดงข้อมูลให้ใช้คำสั่ง: man <number> <command>example: man 1 mkdirและman 2 mkdir
Donny Kurnia

@ DonnyKurnia ความจริงที่สำคัญที่สุดเพียงอย่างเดียวที่คุณต้องรู้ - คุณสามารถคิดออกเองจากที่นี่ไป
n611x007

OTOH ผู้คลางแคลงทำให้คำตอบของคุณมีค่ามากกว่าstackoverflow.com/a/62972/4145951 "การแข่งขัน" ดังนั้นฉันจึงถอนมันขึ้นมา ;)
Nemo

83

ข้อความที่ตัดตอนมาจากman man:

The table below shows the section numbers of the manual followed by the types 
of pages they contain.
  1   Executable programs or shell commands
  2   System calls (functions provided by the kernel)
  3   Library calls (functions within program libraries)
  4   Special files (usually found in /dev)
  5   File formats and conventions eg /etc/passwd
  6   Games
  7   Miscellaneous (including macro  packages  and  conven‐
      tions), e.g. man(7), groff(7)
  8   System administration commands (usually only for root)
  9   Kernel routines [Non standard]

3
"Unix นั้นง่าย: ประเภทman manและส่วนที่เหลือมาเอง"
gerrit

1
นี้ไม่สามารถใช้ได้ในMacOS
แฟรงคลินหยู

36

จำนวนหมายถึงส่วนหน้าคนที่คำสั่งหรือฟังก์ชั่น C อยู่

ดังนั้นคุณสามารถเข้าถึง man page ของmount(8)โดยทำคำสั่ง:

man 8 mount

หรือftok(2)เช่น:

man 2 ftok

2
จากความอยากรู้ว่าทำไมไม่ได้man mount(8)หรือman ftok(2)?
JAB

7
@JAB: เพราะเชลล์ส่วนใหญ่จะใช้วงเล็บเป็นพิเศษ คุณไม่สามารถใช้วงเล็บในคำสั่งเชลล์ใด ๆ (โดยไม่ต้องการทำอะไรพิเศษ)
Wuffers

นั่นเป็นเรื่องที่น่าสนใจ
JAB

+1 นี่คือสิ่งที่สำคัญที่สุดที่คุณจำเป็นต้องรู้ - คุณสามารถคิดเองได้เอง (แม้จะไม่รู้ตัวman man)
n611x007


3

นี่คือหมายเลขส่วน หากคุณต้องการอ่านส่วนที่ 2 ของเมานท์ให้รัน:

man 2 mount

หน้าคู่มือบางหน้ามีหลายส่วน


3

นี่คือmanหมายเลขส่วน

ส่วนและตัวอย่างสำหรับหน้า man linux:

  • 1 - คำสั่งโปรแกรมหรือเชลล์ - cp, rm, dd และ ps
  • 2 - การเรียกของระบบ - fork, exec, ioctl และการสำรวจความคิดเห็น
  • 3 - การเรียกใช้ไลบรารี - printf, malloc, pthread_ * การโทร, cos, sin, tan ฯลฯ
  • 4 - อุปกรณ์เช่น null (/ dev / null), พอร์ต, สุ่ม, lp
  • 5 - รูปแบบไฟล์ - ผู้ใช้, กลุ่ม, โฮสต์, host.equiv
  • 6 - เกม
  • 7 - เบ็ดเตล็ด (มักเป็นภาพรวม) - glob, intro, tcp, uri, url, locale
  • 8 - คำสั่ง Sys Admin และ daemons - arp, mount, เส้นทาง, useradd, userdel เป็นต้น

หมายเหตุมีความแตกต่างระหว่างรายการส่วน man สำหรับ linux และสำหรับ Unix System V Variants (เช่น Solaris, BSD, SCO, Venix) รายละเอียดเพิ่มเติมจาก วิกิพีเดียหน้าคน

Ken Thompson และ Denis Ritchie ที่น่าสนใจผู้สร้าง Unix และ C ที่โด่งดังได้เขียน man man เป็นครั้งแรกโดยยืนยันผู้จัดการของพวกเขา เสียงที่คุ้นเคยหรือไม่

เพื่อเลือกหมายเลขส่วนเฉพาะสำหรับรายการชายบน linux ( printfมีรายการในส่วนที่ 1 และ 3)

man 3 printf

วิธีดูรายการคนทั้งหมดสำหรับcfdisk (ใช้qที่ENDหน้าเดียวเพื่อไปที่หน้าถัดไป:

man -a cfdisk

เพื่อแสดงรายการทั้งหมดสำหรับคำสั่งที่แน่นอนใช้apropos

apropos cfdisk

2

มันคือหมายเลขส่วนของคู่มือ ย้อนกลับไปในสายหมอกแห่งกาลเวลาสิ่งนี้เรียกว่าสารยึดเกาะทางกายภาพซึ่งมีหน้าคู่มือนั้นโดยเฉพาะ

จากmanmanpage บนระบบ Linux ที่ทันสมัย:

   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages  and  conventions), e.g.
       man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]

0

ส่วน Manpage รวมถึงส่วนที่ไม่ได้มาตรฐานบน Arch Linux:

0     Header files
0p    Header files (POSIX)
1     Executable programs or shell commands
1p    Executable programs or shell commands (POSIX)
2     System calls (functions provided by the kernel)
3     Library calls (functions within program libraries)
3n    Network Functions
3p    Perl Modules
4     Special files (usually found in /dev)
5     File formats and conventions eg /etc/passwd
6     Games
7     Miscellaneous  (including  macro  packages and conventions), e.g. man(7), groff(7)
8     System administration commands (usually only for root)
9     Kernel routines
l     Local documentation
n     New manpages

(ขอบคุณ @ greg0ire สำหรับแนวคิดในการใช้ konqueror)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.