Відповіді:
Зверніть увагу на номер розділу: Припустимо, вам потрібна допомога printf
. їх принаймні два: в оболонці та в C. Баш-версія printf знаходиться в розділі 1, версія C - у розділі 3 або 3С. Якщо ви не знаєте, яку з них хочете, введіть man -a printf
і всі сторінки вручну відобразяться.
Якщо ви шукаєте, це формат printf з усіма кодами%, і він не відображається на manf сторінці printf, ви можете перейти на відповідні чоловічі сторінки, перелічені в розділі ДИВІТЬСЯ ТАКОЖ. Ви можете знайти щось подібне formats(5)
, що пропонує вам ввести текст man 5 formats
.
Якщо ви дратуєтесь тим, що man printf
надає printf (1), і все, що вам потрібно, це printf (3), вам доведеться змінити порядок відсканованих каталогів у MANPATH
змінній оточення та поставити ці для мови C перед тими для команд оболонки. Це може статися і тоді, коли сторінки Fortran або TCL / Tk перелічені перед C-сторінками.
Якщо ви не знаєте, з чого почати, введіть man intro
або man -s <section> intro
. Це дає вам підсумок команд запитуваного розділу.
Розділи чітко визначені:
І останнє, але не менш важливе: інформація, що надходить на чоловічих сторінках, не є зайвою, тому уважно читайте її від початку до кінця, щоб збільшити шанси знайти те, що вам потрібно.
man man
щоб побачити повний опис різних розділів.
strstr()
) , і в мене не було Інтернету навколо.
man -k substring
чи apropos substring
допомогла б тобі.
Введіть косу рису, /
а потім введіть рядок для пошуку. Потім натисніть, n
щоб перейти до наступного пункту
людина -к пошуку
Це дасть вам список всіх сторінок, які стосуються "пошуку".
man -k search -s 3
Також згадується в superuser.com/a/677969/599957
Як говорить @Steven D, не забудьте info
сторінки.
Крім того, не лякайте info
сторінки. Я знаю безліч людей, які не використовують інформаційні сторінки через вбудовану систему навігації. Моє улюблене рішення - передати інформаційні сторінки через less
:
info gpg |less
Таким чином я можу переміщуватися по info
сторінках за допомогою мого улюбленого пейджера. Зараз info
сторінки будуть поводитись так само, як man
сторінки.
apropos
Утиліта серйозно зручна для знаходження відповідної довідкової сторінки.
man -k
== apropos
, чи не так?
apropos
це те, що я весь час використовую, коли шукаю щось, що не має для себе сторінку людини.
Типовим пейджером для читання чоловічої сторінки є less
. Існує документація на less
тут .
Зокрема:
ctrl+space
/ f
, що може бути корисно в залежності від того, які пальці ви віддаєте перевагу використовувати для навігації.
Якщо вам більше комфортно з редактором, ніж з пейджером за замовчуванням, ви можете встановити його MANPAGER
в оточенні. Наприклад, у мене є такий рядок у моєму ~/.bashrc
:
export MANPAGER="col -b | vim -c 'set ft=man nomod nolist ignorecase' -"
Я думаю, використання більшості пейджерів є хорошою ідеєю. Цей пейджер дуже потужний, але головна особливість для мене - показ кольорових чоловічих сторінок. Ця функція покращує сприйняття простого тексту та полегшує пошук потрібної інформації.
Подивіться на скріншоті, текст виглядає дуже приємно, чи не так?
most
для перегляду сторінок чоловіка.
> ~/.bashrc
оскільки він замінить те, що вже є. Краще додати ( >>
) або додати вапно вручну, на мій погляд.
aptitude install most; export MANPAGER="most"; man man
. Щоб зробити його постійним:echo 'export MANPAGER="most"' >> ~/.bashrc
В Linux man
ви можете зробити man -K string
(зверніть увагу на велику букву K), щоб здійснити грубої пошук заданого терміна
-K, --global-apropos
Search for text in all manual pages. This is a brute-force
search, and is likely to take some time; if you can, you should
specify a section to reduce the number of pages that need to be
searched. Search terms may be simple strings (the default), or
regular expressions if the --regex option is used.
дуже корисно, коли ви не знаєте, де шукати.
Не ігноруйте info
сторінки. Багато інструментів GNU мають набагато більш широкі інформаційні сторінки, ніж чоловічі. Часто в розділі SEE ТАКОЖ говориться "Повна документація для foo зберігається як посібник Texinfo". Особливо це стосується всього, що є в пакеті GNU coreutils.
Крім того, якщо ви користувач emacs, не забувайте, що ви можете прочитати інформацію та сторінки керівництва, не виходячи зі свого редактора: M-x info
і M-x woman
.
На тих довших, складніших сторінках із керівництвом мені набагато легше читати їх подалі від комп’ютера (як це не знаю), і тому я маю ці функції в своєму .bashrc
# Print man pages
manp() { man -t "$@" | lpr -pPrinter; }
# Create pdf of man page - requires ghostscript and mimeinfo
manpdf() { man -t "$@" | ps2pdf - /tmp/manpdf_$1.pdf && \
xdg-open /tmp/manpdf_$1.pdf ;}
З відповіді Крістофа, якщо ви (тобто) введете, man -k chmod
ви отримаєте список можливостей. Зверніть увагу на число в круглих дужках, це означає, який розділ потрібно шукати на сторінках керівництва:
У UNIX можна спробувати:
man -s1 chmod
він покаже сторінку man для команди chmod
man -s2 chmod
на ній відобразиться сторінка man для функції lib C chmod ()
У Linux ви повинні змінити -s
для-S
Перегляд довідкових сторінок у зручному графічному додатку:
konqueror man:(command)
Для змісту верхнього рівня:
konqueror man:
Особливості:
info:(command)
. Деякі програми надають набагато більше інформації через "info", ніж через "man", а konqueror забезпечує набагато приємніший інтерфейс для перегляду цих інформаційних сторінок. Примітка. Просто використання info:
, також працює для отримання змісту верхнього рівня.
gman
пакет, який встановлює веб-сервер manpage на localhost / cgi-bin / man / man2html .
yelp
є заміною легшої ваги для зменшення ваги, konqueror
хоча вона має недолік у тому, щоб не містити змісту або сторінки розрізнення для імен, що використовуються у кількох розділах. Ви повинні чітко їх розмежувати, додаючи .(section)
- наприклад yelp man:open.2
. Ви також можете використовувати <kbd> Ctrl-L </kbd>, щоб відкрити рядок розташування.
Дайум, люди! Що з суперечливими відповідями ?! Що б не сталося, щоб простота була ключем до блиску, а що ні? Більшість ключів vi / vim працюватимуть плавно:
/
або ?
- Шукайте вперед або назад (як деякі хлопці вже згадували). У випадку, коли перший, малий n буде прокручувати сірники вперед, велика літера N піде назад. Протилежне до останнього - знак питання.
Трохи складніші пошуки за допомогою регулярних виразів. Різниця між man
(або less
) та VIM полягає в тому, що вам потрібно використовувати символ escape (), щоб оголосити метахарактери у своєму виразі під час використання останнього. Хороша новина полягає в тому, що коли ви використовуєте колишній ( man
або less
) -не так багато. Таким чином , ви можете легко помістити це використовувати при пошуку, наприклад, на iptables
сторінці людини для декількох термінів , як так:
/(iptables|rules)
. Якщо ви не знайомі з регулярними виразами, це означає "Шукати екземпляри слів iptables
АБОrules
"" Після введення цього і продовження натискання n ви будете прокручувати почергові результати пошуку, результати будуть добре виділені для вас різними кольорами (два, власне. Ха-ха). Якщо ви намагаєтеся проскочити сторінку та хочете сконцентруватися на конкретних термінах чи поняттях - ви не пропустите жодної речі!
І, звичайно, для швидшої навігації звичайні vi
режими очікування все ще стоять (каламбур не призначений):
gg
або G
- початок / кінець документа; (Виправлення! У man
вас можна використовувати всі згадані нижче ключі, не використовуючи Ctrl. Це vi
лише для ).
Ctrl + u or d
- Прокручування вгору або вниз;
Ctrl + b or f
- Те саме, тільки більшими стрибками. "Сторінка назад або вперед";
e
або y
- прокручування по одному рядку, але я думаю, що більшість людей скоріше просто використовувати клавіші зі стрілками. Однак, якщо ви хочете залишитися "1337" і "ніколи не залишати домашній рядок" (як я це люблю) - це шлях.
Що я намагаюся сказати, це те, що UNIX має два основні смаки керування програмами клавіатури, які є обома частинами readline
бібліотеки: vi та emacs. Збийте котлети або в одному (але, бажано, в обох), і це зробить ваше життя набагато менш складним. Більшість програм CLI в UNIX використовують будь-яку. BASH
використовує елементи керування emacs за замовчуванням, але його можна легко встановити на "vi режим", набравши set -o vi
. Те саме можна сказати і для регулярних виразів, але це буде поза темою. Я б навіть зайшов, щоб сказати, що обидва є "lingua franca" UNIX.
Більшість із нас встановлюють змінну PATH. Це покаже вам, як автоматично зробити так, щоб шлях пошуку людини відповідав вашій команді PATH пошуку.
Скажімо, ви додаєте свій шлях, щоб включити ваші особисті, робочі та локально встановлені утиліти, наприклад export PATH=$PATH:~/bin:/workgroup/bin:/opt/local/bin:
. Як побічний ефект, man foo
не відображатимуться Manpages, що зберігаються у ~ / man, / workgroup / man або / opt / local / man.
Щоб вирішити це питання, я використовую manpath
команду для автоматичного встановлення шляху пошуку на сторінці чоловічої сторінки. Наприклад, мій ~ / .bashrc має таке. Це працює для мене в ста різних системах, на яких працює все від FreeBSD 4.x, Darwin та CentOS 5:
### PATH & MANPATH
# My personal utilities
export PATH=$PATH:$HOME/bin
### Set the manpath based on the PATH, after man(1) parses man.conf
# - No need to modify man.conf or manually modify MANPATH_MAP
# - Works on Linux, FreeBSD & Darwin, unlike /etc/manpaths.d/
# See "SEARCH PATH FOR MANUAL PAGES" in man(1)
# Just set the man search path. Don't print output to screeen.
manpath >/dev/null
Деякі системи (як Apple Leopard) встановлюють MANPATH автоматично, але це означає, що ваша система використовуватиме змінну MANPATH замість використання manpath
. Внаслідок цього сторінки man для "MacPorts" (/ opt / local / man) ігноруються. Я хочу контролювати це сам, тому я скасовую MANPATH:
unset MANPATH
manpath >/dev/null
Якщо ви дратуєтеся тим, що людина printf дає вам printf (1), і все, що вам потрібно, це printf (3), ви можете сказати людині, що ви хочете printf з розділу 3, поставивши розділ перед printf, як-от так:, man 3 printf
не змінюючи значення порядок відсканованих каталогів у змінній середовища MANPATH та поставте ті для мови C перед тими для команд оболонки.
Я просто використовую grep
. Якби мені було цікаво, що зробив -s
варіант read
команди, я спробував би ці команди, щоб отримати відповідь:
info read |grep \\-s
man read |grep \\-s
help read |grep \\-s
У цьому випадку лише info
команда дала чітку відповідь. Ця відмінна відповідь дає детальну інформацію про різні довідкові системи.
Наприклад -u
, для ефективного пошуку одного символьного перемикача , ви можете часто використовувати:
/^ *-u($|\s)
Економить багато часу, якщо в багатьох опціях є "-u" як префікс.
/-u($|[,\s])
у випадку, якщо символ параметра обрамлений комою. Але якщо ви хочете , щоб побачити всі записи символу опції «і» (як -u]
в [--udp|-u]
в netstat
керівництві) вам потрібно що - щось на зразок цього: /-u($|[^a-z])
А якщо vi
і vim
використовуються в якості пейджера: /-u\($\|[^a-z]\)
Команда apropos (1) використовується для пошуку вручних сторінок. Однак більшість реалізацій apropos (1) просто шукають у розділі NAME, що дуже обмежує.
NetBSD має повнотекстовий пошук apropos (1), який здатний шукати повний вміст сторінок. Для нього також є веб-інтерфейс: man-k.org , який можна спробувати.
Якщо вам важко читати вручну через весь текст білого кольору, ви можете їх розфарбувати. Більшість чоловічих сторінок відкриваються разом із less
. Для less
, я використовую наступні налаштування кольору в .bashrc
від тут :
man() {
LESS_TERMCAP_md=$'\e[01;31m' \red
LESS_TERMCAP_me=$'\e[0m' \
LESS_TERMCAP_se=$'\e[0m' \
LESS_TERMCAP_so=$'\e[01;44;33m' \yellow on blue
LESS_TERMCAP_ue=$'\e[0m' \
LESS_TERMCAP_us=$'\e[01;32m' \green
command man "$@"
}
Це для bash і zsh. Для most
, fish
, xterm
і rxvt
побачити посилання вище.
Для подальшого читання:
А для тих, хто любить читати сторінки про людину та інформацію на сенсорному екрані, ви можете передати людину / інформацію до яду чи зену та скористатися всіма смаколиками gtk3, як прокрутка рідного пальця. Також чудово підходить для екрану і миші:
man cat |yad --text-info
Ви також можете використовувати zenity або додати параметри yad, як-от:
man cat |yad --text-info --height=500 --width=800 --center --wrap --show-uri --no-markup &
Порада: за допомогою показу урі йо можна натиснути на веб-посилання всередині чоловічих сторінок мишкою / пальцем.
man --help
/man -h
та його більш повний братman man
має поради щодо пошуку та навігації.