Почему программы в Unix-подобных средах имеют номера после их имени?

Например, когда я запускаю man ioctl, страница говорит IOCTL(2) вверху. Что это значит? Есть ли IOCTL(1)? И как перемещаться между ними?

Ответ 1

Это раздел справочной страницы. Из памяти раздел 1 представляет собой пользовательские программы, 2 - системные вызовы, а 3 - стандартные вызовы библиотеки C, а 5 - форматы файлов.

В Википедии есть полное объяснение здесь.

Ответ 2

Это номер раздела страницы man. Например

 man printf

(должен) Дайте вам раздел 1, printf команду bash, а

 man 3 printf

предоставляет функцию C printf.