Почему существуют разные пути для команды в разделе «Синопсис» на странице человека?

Глядя на страницу man для grep я заметил, что в команде есть два разных пути. Означает ли это, что у меня есть несколько инструментов grep в моей системе? Строки синопсиса имеют один и тот же путь только для разных примеров использования одного и того же инструмента? Я использую OS X 10.10.5

 NAME grep - search a file for a pattern SYNOPSIS /usr/bin/grep [-bchilnsvw] limited-regular-expression [filename]... /usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvx] -e pattern_list... [-f pattern_file]... [file]... /usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvx] [-e pattern_list]... -f pattern_file... [file]... /usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvx] pattern [file]... DESCRIPTION The grep utility searches text files for a pattern and prints all lines that contain that pattern. It uses a com- pact non-deterministic algorithm. 

Следующий вопрос: откуда происходят страницы с людьми? Они генерируются динамически или являются частью статической установки?

2 Solutions collect form web for “Почему существуют разные пути для команды в разделе «Синопсис» на странице человека?”

Вы говорите, что находитесь на машине macOS, но руководство выглядит подозрительно, как руководство grep на машине Solaris . Вот руководство для grep на OSX 10.9 для сравнения .

В Solaris существует несколько утилит с несколькими реализациями, а grep – один из них. Те, что находятся в /usr/bin соответствуют XPG3, что является сокращением для «Руководство по переносимости X / Open, выпуск 3». Спецификация Single Unix основана на XPG4 (ссылка: статья Wikipedia X / Open )

Например, grep в /usr/bin не поддерживает расширенные регулярные выражения, а в /usr/xpg4/bin .

Если утилита имеет несколько строк синопсиса в своем руководстве, то обычно они описывают взаимоисключающие способы вызова инструмента.

Эти:

 /usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvx] -e pattern_list... [-f pattern_file]... [file]... /usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvx] [-e pattern_list]... -f pattern_file... [file]... 

.. показать, что вы можете использовать либо -e или -f (или оба), но вы должны использовать один из них.

Последний,

  /usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvx] pattern [file]... 

… показывает, что если вы используете ни -e или -f , тогда pattern должен быть указан в командной строке.

См. Также standards(5) по Solaris .


Руководства устанавливаются «статически», т.е. в виде отдельных файлов, которые команда man читает и отображает. Тем не менее, в зависимости от вашей системы некоторые из них могут быть исходными файлами groff или mandoc , в то время как другие могут быть предварительно отформатированы как текстовые файлы, иногда хранящиеся в каталоге для сиблинга, в неформатированные руководства, часто называемые чем-то вроде cat . Иногда они также могут быть сжаты. Прочтите руководство пользователя в вашей системе ( man man ), чтобы узнать, как там обрабатываются руководства.

Чаще всего руководства можно найти в /usr/share/man , /usr/local/share/man или в каком-либо таком местоположении.

Ручные страницы динамически отформатированы, но содержимое статично. Его конфигурация, включая расположение фактических предварительно отформатированных страниц руководства, обычно определяется в /etc/man.conf .

В соответствующей части моей машины MacOS:

 # Every automatically generated MANPATH includes these fields # MANPATH /usr/share/man MANPATH /usr/local/share/man MANPATH /usr/X11/man # # Uncomment if you want to include one of these by default # # MANPATH /opt/*/man # MANPATH /usr/lib/*/man # MANPATH /usr/share/*/man # MANPATH /usr/kerberos/man # # Set up PATH to MANPATH mapping # # If people ask for "man foo" and have "/dir/bin/foo" in their PATH # and the docs are found in "/dir/man", then no mapping is required. # # The below mappings are superfluous when the right hand side is # in the mandatory manpath already, but will keep man from statting # lots of other nearby files and directories. # MANPATH_MAP /bin /usr/share/man MANPATH_MAP /sbin /usr/share/man MANPATH_MAP /usr/bin /usr/share/man MANPATH_MAP /usr/sbin /usr/share/man MANPATH_MAP /usr/local/bin /usr/local/share/man MANPATH_MAP /usr/local/sbin /usr/local/share/man MANPATH_MAP /usr/X11/bin /usr/X11/man MANPATH_MAP /usr/bin/X11 /usr/X11/man MANPATH_MAP /usr/bin/mh /usr/share/man 

Итак, глядя в /usr/share/man/man1 , я вижу grep.1 который определяет содержание страницы руководства для grep(1) .

  • GRUB и LILO оба не могут установить на жесткий диск NVMe при установке Debian
  • Как установить «установить USB» с пользовательским Linux?
  • Новый LMDE2 устанавливает и правильно перемещает / домашний раздел
  • Пытался сделать минимальную установку Debian с помощью netinst - но все еще установлен GIMP и Libreoffice
  • Установщик Linux USB не видит мой внутренний накопитель SSD
  • Почему не удается установить пакеты в Synaptic Debian 8.5?
  • `Ошибка: нет такого устройства ...` после установки Arch Linux
  • Установка Linux Mint на Windows-Ubuntu с двойной загрузкой
  • Настройка CentOS7.0 - размер раздела
  • Как настроить рабочую станцию ​​для нескольких пользователей Linux и Windows?
  • Могу ли я отлаживать проблемы загрузки / сети при использовании стандартного ISO с debian-installer?
  • Interesting Posts

    построение кода из исходного кода и добавление их к вашему пути

    KODi и терминал не реагируют на все кнопки с пульта дистанционного управления (rc_core)

    Как выполнить 'find' с 'sed' в функции bash

    Использование bluez для доступа к устройствам с низким энергопотреблением Bluetooth?

    NFSv3 с ошибкой Kerberos "unmatched host"

    Как подключиться к локальному сеансу удаленного компьютера по ssh?

    Есть ли какая-либо команда для включения / выключения расширения php из командной строки?

    Нужно удалить Nouveau на Fedora 23, но не может найти хорошего руководства

    Каким виртуальным терминалом является данный X-процесс?

    Терминал замерзает после использования tar или gz

    / dev / null-like автоматический каталог мусора для перемещения файлов?

    Получить количество слов в текстовом файле для всех слов и распечатать результат сортировки

    Установка Unity на Debian

    попугай VM на linux

    luks – существует ли двухфакторная аутентификация

    Linux и Unix - лучшая ОС в мире.