Недавно я увидел https://lintian.debian.org/tags/binary-without-manpage.html, и он показывает около 14 тыс. Страниц, которые отсутствуют.
Это означает, что более чем вероятно, что в некоторых бинарных пакетах (не в библиотеках) отсутствуют man-страницы. Как получить список установленных бинарных пакетов / приложений (НЕ библиотек), в которых нет man-страниц? Я мог бы знать некоторых и начать вносить свой вклад в это.
debian
package-management
man
Shirish
источник
источник
Несмотря на то, что
manpage-alert
он выполняет то, что вы просите, вы должны заметить, что список в ссылке на ваш вопрос генерируется другим процессом, который представляет собой следующую проверку в Lintian:https://github.com/Debian/lintian/blob/master/checks/manpages.pm
Таким образом, его можно получить, вызвав
lintian
эту-T binary-without-manpage
опцию (и другие опции, чтобы выбрать пакеты, которые вы хотите проверить).источник
Благодаря принятому ответу было интересно узнать о существовании утилиты
manpage-alert
, частиdevscripts
пакета, которая на самом деле является сценарием оболочки.Я попытался установить,
devscripts
но получил приглашение установить около 70 МБ зависимостей, поэтому я пропустил.Скачивая
devscripts
пакет deb (apt download devscripts
), извлекая deb и более внимательно изучаяmanpage-alert
сценарий, вся история «под капотом» заключается в том, что этот сценарий оповещения запускает команду:man -w -S 1:8:6 <file>
(w = показать местоположение -S 1: 8: 6 ограничивает поиск человека в разделах 1,8 и 6).Эта операция выполняется во всех файлах рекурсивно под каталогами
/bin
,/sbin
,/usr/bin
,/usr/sbin
, и/usr/games
.Кроме того, перенаправляя
man
к ,2>&1
а также перенаправление>/dev/null
, если файл имеет действительное местонахождение человека страницы ничего не печатается, но еслиman
жалуется на «нет ручного ввода» , то это сообщение будет напечатано.Автор
manpage-alert
также удаляетman
сообщение об ошибке из сообщения «см. Man 7 unsocumented for help» и сохраняет только первую строку =No manual entry for xxxx
.В результате, следующие несколько строк приведут к похожему выводу двоичных файлов с отсутствующими справочными страницами без установки пакета devscripts:
PS:
${ff##*/}
сохраняет только имя команды вскрышного пути/usr/bin/
или/bin/
или любые другиеВыше также можно запустить как однострочник:
PS: Вы можете, конечно, установить,
devscripts
так как в него включено много хороших утилит / скриптов. Мне просто нравится знать, что работает под капотом :-)источник
manpage-alert
сценарий начинается с#!/bin/sh -e