Acho útil grep para texto, por exemplo, opções específicas, em páginas man a partir da linha de comando.
No entanto, grep
não funciona como esperado, ao operar em páginas man, como pode ser visto abaixo, onde o padrão "-f"
apenas corresponde "-"
e o padrão "--file"
não corresponde a nada ( alias grep='grep --color=always'
):
nlykkei-mbp:~ nlykkei$ alias grep
alias grep='grep --color=always'
nlykkei-mbp:~ nlykkei$ man grep | grep -e "-f"
[-e pattern] [-f file] [--binary-files=value] [--color[=when]]
-F, --fixed-strings
-f file, --file=file
-h, --no-filename
--binary-file=without-match option.
-L, --files-without-match
-l, --files-with-matches
--binary-files=value
and the behaviour of the -f flag when used with an empty pattern file is
nlykkei-mbp:~ nlykkei$ man grep | grep -e "--file"
nlykkei-mbp:~ nlykkei$ echo "--file" | grep -e "--file"
--file
nlykkei-mbp:~ nlykkei$ ▒
Em contraste, a correspondência de texto canalizado de echo
obras conforme o esperado, então isso tem algo a ver com a formatação "invisível" de páginas de manual? É possível um texto grep confiável em páginas de manual?
Nota: eu sei man -k
e man -K
, mas estes não resolvem exatamente o que estou tentando alcançar.
SOLUÇÃO 1: use um arquivo conf específico para man
um arquivo de configuração
.man.raw.conf
um exemplo de uso de
man
SOLUÇÃO 2: usar
colcrt -
ps 1: sem
-
colcrt adiciona mais lixops 2: essa pergunta e resposta não faz sentido no linux, pois não é o mesmo comportamento.
Você não deve usar grep em páginas de manual. As páginas de manual são codificadas (não em inglês simples) o conteúdo não corresponderá à frase que você deseja pesquisar.
Assumindo que o programa
man
está usandoless
para mostrar páginas de manual, existe uma maneira de pesquisar com a ajuda deless
. Continue lendo.Para confirmar que suas páginas de manual estão sendo apresentadas por
less
, digiteman grep
(ou algum outro comando), pressione enter e enquanto visualiza a página de manual, pressione apenas a tecla h . Se for menor, o título da página de ajuda apresentada é intitulado: RESUMO DE MENOS COMANDOS . Depois de confirmar isso. Você deve saber queless
é capaz de fazer pesquisas por si só (pressione q paraquit
a página de ajuda apresentada, se necessário) usando a tecla / . Se você pressionar:e pressione enter, você verá o
-f
destaque (pressionandon
irá passar para a próxima correspondência).Ou, se você precisar ver apenas as linhas que correspondem a uma string, faça:
Se você precisar ativar essas pesquisas na linha de comando, faça: