Como posso usar o homem sem menos?

19

Por padrão, man usa less para gerar texto. Como posso dizer a saída apenas para stdout? Meu emulador de terminal tem uma barra de rolagem e uma função de busca e eu quero usá-las em vez das teclas de seta.

    
por rightfold 27.10.2011 / 14:32

4 respostas

28

Na verdade, ele usa o que está especificado na variável de ambiente MANPAGER ou PAGER .

Dependendo da implementação e da versão man , pode haver também uma opção de linha de comando para especificar o pager.

Com a implementação man-db , uso todas as formas abaixo:

MANPAGER=cat man man

PAGER=cat man man

MANOPT='-P cat' man man

man -P cat man

Para defini-lo permanentemente, basta adicioná-lo ao seu ~/.bashrc (ou outro arquivo de inicialização usado pelo seu shell):

export MANPAGER=cat

Isso também funciona com algumas implementações man mais antigas, enquanto MANOPT é específico do homem-db:

export MANOPT='-P cat'

(Melhor não defina PAGER dessa forma. Esse também é usado por muitos outros aplicativos.)

Também pode haver um arquivo de configuração global. man-db tem /etc/man_db.conf ou /etc/manpath.config . Lá você pode definir:

DEFINE    pager    cat

Mas, infelizmente, isso é levado em consideração somente se nem MANPAGER nem PAGER for definido.

    
por 27.10.2011 / 14:43
6

Simplesmente canalize a saída de man para cat ?

man ls | cat   # useful use of cat
    
por 27.10.2011 / 14:53
2

Tente esses comandos para gerar saída de homem sem um pager.

  • man ls | cat (largura fixa gerada)

  • man -P cat ls (largura variável gerada)

Eu estava em um sistema GNU linux

    
por 23.05.2013 / 19:42
1

Outro ângulo: semelhante à resposta de Tony.

Você também pode redirecionar a saída man em um arquivo e visualizá-lo com seu editor de texto favorito ou até adicionar marcadores, comentários, etc. a ele.

man bash  > bashman.txt

Eu tenho uma cópia da página man bash, bem como apenas as seções sobre bash flow control e bash test flags salvas como arquivos de texto no meu diretório bin para que eu possa carregá-las diretamente no meu editor de texto (kate) para referência enquanto Estou escrevendo scripts bash.

Aviso: dependendo do seu sistema e da página man, o comando acima pode resultar na formatação de informações e controle de caracteres no arquivo.

Para evitar isso, faça como sugerido em LESS='+/^TIPS' man man :

To  get a  plain  text  version  of a man page, without backspaces and
underscores, try

  # man foo | col -b > foo.mantxt
    
por 30.10.2011 / 02:30

Tags