Полнотекстовый поиск для страниц man


12

aproposотлично работает для поиска имен страниц и описаний руководства. Есть ли подобная команда для поиска всего содержимого страниц справочника?


Я отредактировал название. Надеюсь, это прояснит ситуацию.
phunehehe

Ответы:


13

Используя команду man man, мы видим, что у нас есть два варианта.

   -k     Equivalent to apropos.

   -K     Search  for  the  specified  string in *all* man pages. Warning:
          this is probably very slow!  It  helps  to  specify  a  section.
          (Just  to  give  a  rough idea, on my machine this takes about a
          minute per 500 man pages.)

Это на системе RHEL 5


2

Это, вероятно, поздно. Но я только что завершил свой проект Google Summer of Code для NetBSD, и моя задача была именно такой. Реализация полнотекстового поиска для man-страниц.

Код здесь: https://github.com/abhinav-upadhyay/apropos_replacement

Хотя на данный момент это только для систем * BSD (точнее NetBSD, но должна работать с другими BSD с некоторыми небольшими изменениями) из-за некоторых допущений, сделанных при написании кода, и у меня нет машины Linux, чтобы исправить или порт это для работы на Linux.

Для этого существует веб-интерфейс man-k.org.


1

два варианта для вас. во-первых, вы можете попробовать этот скрипт:

#!/bin/bash
for MANFILE in /usr/share/man/man?/*
do
    found=`zcat $MANFILE | grep -c "$1"`
    if [ $found -gt 0 ]; then
        echo "------ Found in $MANFILE"
        man -P cat $MANFILE | grep --color=auto "$1"
    fi
done

сохранить его как searchman.shи некоторые, такие, и, возможно , сделать его исполняемым и вставить его где - нибудь в $PATH. Просто беги sh searchman.sh <query>. (примечание: я только что быстро собрал все это вместе. Я проверил это, и, похоже, все будет хорошо, но, возможно, потребуется подправить кое-где.)

во-вторых, и особенно если вы используете Ubuntu, вы можете использовать http://manpages.ubuntu.com/ - доступно несколько вариантов полнотекстового поиска.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.