найти команды с man-страницами

мы используем man foo для поиска команды foo. Знать, что это такое и какова его задача, и найти все переключатели.

Но дело в том, когда вы хотите сделать foo , и вы не знаете, какая команда для этого. Я хотел бы найти среди справочных страниц, чтобы узнать, какая команда связана с этим?

Мой вопрос:

есть ли способ угадать, что подходит команда для ваша потребность без доступа к интернету и поиску в интернете? и найти их только человеком на терминале?

3
задан 16 July 2014 в 09:58

2 ответа

Нет никаких, фиксируют метод нахождения команды. Но man -k может помочь Вам несколько.

Согласно man man

man -k printf
       Search the short descriptions and manual page names for the keyword
       printf  as  regular expression.  Print out any matches.  Equivalent
       to apropos -r printf.

, Например, если я хочу искать систему управления версиями, я могу попробовать

man -k 'version control'|grep ' (1)'

, который показывает

bzr (1)              - Bazaar next-generation distributed version control

, Но она не показала git, потому что это - краткое описание,

git (1)              - the stupid content tracker

, который не соответствует regexp "управлению версиями".

4
ответ дан 16 July 2014 в 09:58

Если Вы знаете 'sorta', с чем связана Ваша команда, можно использовать apropos команда:

xenon-lornix:~> apropos change directory

alphasort (3)        - scan a directory for matching entries
apt-listchanges (1)  - Show new changelog entries from Debian package archives
avahi-set-host-name (1) - Change mDNS host name
basename (1)         - strip directory and suffix from filenames
basename (1posix)    - return non-directory portion of a pathname
besside-ng-crawler (1) - filter EAPOL frames from a directory of capture files.
bindtextdomain (3)   - set directory containing message catalogs
BN_swap (3ssl)       - exchange BIGNUMs
brk (2)              - change data segment size
can_change_color (3ncurses) - curses color manipulation routines
can_change_color_sp (3ncurses) - curses screen-pointer extension
cd (1posix)          - change the working directory
chacl (1)            - change the access control list of a file or directory
chage (1)            - change user password expiry information
chattr (1)           - change file attributes on a Linux file system
chcon (1)            - change file security context
chdir (2)            - change working directory
chdir (3posix)       - change working directory
... and 400+ more ...

Вы получили это много возвратов с тех пор apropos значения по умолчанию к или режим... так что-либо, что соответствует change ИЛИ directory возвращается. Ух! Слишком многие! (Хотя я вижу тот, мы хотим здесь хотя),

xenon-lornix:~> apropos --and change directory

cd (1posix)          - change the working directory
chacl (1)            - change the access control list of a file or directory
chdir (2)            - change working directory
chdir (3posix)       - change working directory
chroot (2)           - change root directory
fchdir (2)           - change working directory
fchdir (3posix)      - change working directory
futimesat (2)        - change timestamps of a file relative to a directory file descriptor
git-stash (1)        - Stash the changes in a dirty working directory away
Linux::Inotify2 (3pm) - scalable directory/file change notification
mcd (1)              - change MSDOS directory
revpath (1)          - generate a relative path that can be used to undo a change-directory

На этот раз мы только получили 12 результатов, намного лучше! И Вы видите cd (1posix) команда, которая может быть полезной. man cd или man 1posix cd покажет Вам страницу справочника. И если Вы используете bash оболочка (или zsh или безотносительно...), всегда проверяйте их страницы справочника также. man bash и поиск change получит Вас близко к встроенному описанию команды CD удара. (продолжайте искать! Это там!)

apropos добирается это - информация от базы данных, создаваемой каждую ночь (cronjob), это действительно только ищет имя и разделы описания страниц справочника. Если Вы ДЕЙСТВИТЕЛЬНО хотите искать ключевое слово, использовать man -K (верхний регистр K там):

xenon-lornix:~> man -K M_CHECK_ACTION

(should bring up the man page for mallopt(3))

Действительно помните, что это - физическое касание "В ЛОБ" и поиск КАЖДОЙ страницы справочника в Вашей системе. Это может требовать времени! Намного быстрее после того, как все читалось в и кэшировалось все же.

Просто хотите список страниц справочника с конкретным ключевым словом?

xenon-lornix:~> man -K -w MALLOC_CHECK_

/usr/share/man/man3/malloc.3.gz
/usr/share/man/man3/malloc_get_state.3.gz
/usr/share/man/man3/mallopt.3.gz
/usr/share/man/man3/mcheck.3.gz

Найденный на нескольких страницах там. (Капитал Kay, строчная двойная овца)

Взгляните на man страница справочника также, некоторые интересные изменения.

4
ответ дан 16 July 2014 в 09:58

Другие вопросы по тегам:

Похожие вопросы: