Как я могу «кошачьи» справочную страницу, как я бы «кошачий» файл, чтобы получить только дамп содержимого?
Как я могу «кошачьи» справочную страницу, как я бы «кошачий» файл, чтобы получить только дамп содержимого?
Ответы:
Прежде всего, файлы man обычно представляют собой просто текстовые файлы gziped где-то в вашей файловой системе. Так как ваш поиск будет различаться, и вы, вероятно, хотели получить обработанную и отформатированную версию, которую вам даст человек вместо источника, вы можете просто сбросить их с помощью manинструмента. Посмотрев man man, я вижу, что вы можете изменить программу, используемую для просмотра man-страниц, с таким -Pфлагом:
man -P cat command_name
Кроме того, ничего не стоит, что manавтоматически обнаруживает, когда вы выводите на экран его вывод, а не просматриваете его на экране, поэтому, если вы собираетесь обрабатывать его чем-то другим, вы можете сразу перейти к этому шагу следующим образом:
man command_name | grep search_string
или сбросить в файл:
man command_name > formatted_man_page.txt
manв вашей оболочке нет псевдонимов или флагов, которые отделяют вашу функцию от обычной man?
man command_name > formatted_man_page.txtвызовет некоторое слово дубликат.
Чтобы получить файл справочной страницы ASCII, без назойливых попыток подчеркивания / подчеркивания на заднем плане и странных последовательностей, чтобы сделать жирным шрифтом:
man ksh | col -b > ksh.txt
Страницы troffруководства обычно представляют собой предварительно обработанные файлы, и вы можете перейти к простому тексту,
groff -t -e -mandoc -Tascii manpage.1 | col -bx > manpage.txt
groffэто обертка для troff.
Возможно, вам придется сначала использовать gzip для распаковки файлов справочной страницы, и у вас все равно будет много информации о форматировании в выводе.
Я делаю это все время. Эта командная строка делает меня счастливым:
man man | col -bx > man.txt
col -b удаляет пробелы.
col -bx также заменяет табуляцию пробелами, что является моим сильным предпочтением.
Если я хочу, чтобы текст во время чтения форматировался в соответствии с шириной моих предпочтений, я изменяю команду на следующую:
MANWIDTH=10000 man man | col -bx > man.txt
man man | col -bx > man.txtработал на меня. Спасибо.
Просто используйте manкоманду - вы можете направить вывод в другие вещи, как вы можете catдля файла.