Jak mogę uzyskać nieprzetworzony tekst instrukcji w moim terminalu

8

Jak mogę uzyskać wyjściowy tekst instrukcji w moim terminalu?

Chcę mieć instrukcję bez wyświetlanego ekranu typu „mniej”.

użytkownik123456
źródło
2
Co masz na myśli mówiąc „nieprzetworzony tekst”? Istnieje -tmożliwość sformatowania strony podręcznika groff.
edwinksl

Odpowiedzi:

12

Możesz zmienić pager catna -Popcję:

man -P cat command

gdzie commandjest polecenie zainteresowania, którego stronę podręcznika chcesz przeczytać.

Możesz także przekierować stronę man do pliku, który możesz następnie otworzyć, aby przeczytać:

man command > file
edwinksl
źródło
4

Możesz bezpośrednio odczytać skompresowane (mogą być również nieskompresowane) manpliki, znajdujące się /usr/share/man/w katalogach odpowiadających odpowiednim sekcjom.

Na przykład, aby uzyskać surową treść manstrony cat, musisz przeczytać /usr/share/man/man1/cat.1.gz:

zcat /usr/share/man/man1/cat.1.gz 

Podobnie dla man 2 fork:

zcat /usr/share/man/man2/fork.2.gz
heemayl
źródło
3

Jeśli chcesz mieć format tekstowy ORAZ nie chcesz, aby te nieznośne „separatory stron” znajdowały się wszędzie w dokumencie, można to zrobić w następujący sposób:

zcat /usr/share/man/en/man1/man.1.gz | groff -m man -rcR=1 -T ascii -

(zmień /usr/share/man/en/man1/man.1.gzna stronę man, której szukasz. To jest strona man dla man (to samo co:, man manale bez separatorów stron)

Istnieje sposób wykonania niestandardowej komendy man, która robi to samo dla ciebie, ale nie mogę jej teraz przetestować ...

Olivier Dulac
źródło
1

Wyniki przekierowania man(jak sugerowano w innych odpowiedziach) powinny działać zgodnie z oczekiwaniami. manwykrywa, że ​​jego wynik nie jest tty, więc unika drukowania odpowiednich znaków zmiany znaczenia, które w przeciwnym razie zapewniałyby kursywę , pogrubienie i inne formatowanie.

Jako ogólniejszą odpowiedź, możesz użyć col -bdo usunięcia takich znaków z wyników dowolnego polecenia. Nie wszystkie polecenia są tak inteligentne mani mogą nie wykryć przekierowania ich danych wyjściowych. Innymi słowy, mógłbyś zrobić coś takiego:

man command | col -b > somefile
Soren L. Hansen
źródło