Por exemplo, em vez de todo o manual apt-get
, quero pular para a -f
opção no prompt do terminal imediatamente, sem usar a pesquisa na página de manual.
man
, em vez de retornar uma lista confusa de linhas separadas.
Por exemplo, em vez de todo o manual apt-get
, quero pular para a -f
opção no prompt do terminal imediatamente, sem usar a pesquisa na página de manual.
man
, em vez de retornar uma lista confusa de linhas separadas.
Respostas:
O pager padrão usado por man
é less
. Você pode passar o padrão de pesquisa ERE (Extended Regular Expression) que less
entende diretamente a ele por LESS
meio da variável de ambiente. Caso contrário, você deve fazer o seguinte:
LESS='+/-f' man apt-get
É exatamente o mesmo que passar /-f
depois de fazer man apt-get
.
Agora, isso destacaria todos os -f
s na man
página. Para pular diretamente para a opção desejada, ou seja -f
, você pode usar o ERE para corresponder apenas às linhas que começam com espaços / tabulações, seguidas por -f
:
LESS='+/^[[:blank:]]+-f' man apt-get
Embora isso funcione aqui, mas ainda não seja preciso para todas as páginas, isso corresponderá a qualquer coisa que comece com -f
espaços / guias iniciais. Ajuste um pouco o padrão para atender às suas necessidades nesses casos.
Você pode criar uma pequena função para passar o padrão de pesquisa e a man
página a ser procurada como argumentos, se fizer isso com frequência.
Digite uma barra, o que você está procurando e pressione enter. Você pulará para a primeira ocorrência. Pressione Npara ir para a próxima ocorrência e Bvoltar. Então, neste caso:
/-f <enter>
/ -f
. Isso deve ignorar qualquer uso embutido de -f
.
Use sed
para mostrar o parágrafo inteiro de uma opção que começa com um hífen. Para mostrar o parágrafo inteiro da -f
opção imediatamente executando um único comando, use:
man apt-get | sed -n '/-f,/,/^$/p'
-f-,--no-f, -f=no or several other variations.
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
This option, when used with install/remove, can omit any packages
to permit APT to deduce a likely solution. If packages are
specified, these have to completely correct the problem. The option
is sometimes necessary when running APT for the first time; APT
itself does not allow broken package dependencies to exist on a
system. It is possible that a system's dependency structure can be
so corrupt as to require manual intervention (which usually means
using dpkg --remove to eliminate some of the offending packages).
Use of this option together with -m may produce an error in some
situations. Configuration Item: APT::Get::Fix-Broken.
Isso retorna o parágrafo inteiro da -f
opção no man, apt-get
mas o comando acima pode ser aprimorado, eliminando a vírgula após, -f
para torná-la mais útil da seguinte maneira:
man apt-get | sed -n '/-f/,/^$/p'
Isso retorna vários parágrafos, a maioria dos quais você não deseja ler. Ao ler as primeiras linhas dos vários parágrafos, você pode ver que deseja mostrar apenas o parágrafo que contém a -f, --fix-broken
opção. Faça o seguinte:
man apt-get | sed -n '/--fix-broken/,/^$/p'
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
This option, when used with install/remove, can omit any packages
to permit APT to deduce a likely solution. If packages are
specified, these have to completely correct the problem. The option
is sometimes necessary when running APT for the first time; APT
itself does not allow broken package dependencies to exist on a
system. It is possible that a system's dependency structure can be
so corrupt as to require manual intervention (which usually means
using dpkg --remove to eliminate some of the offending packages).
Use of this option together with -m may produce an error in some
situations. Configuration Item: APT::Get::Fix-Broken.
Isso retorna apenas a saída que você deseja ler. Esse método funciona com qualquer outra opção que comece com um hífen e também geralmente procura por opções que começam com um hífen em outros comandos além de apenas apt-get
.
Se a descrição de um parágrafo não fornecer informações suficientes, o comando a seguir mostrará o primeiro parágrafo igual ao comando anterior e os próximos parágrafos após ele também.
LESS='+/^[[:space:]]*-f' man apt-get
Os resultados deste comando mostram que os próximos parágrafos não são muito interessantes, mas para algumas opções os próximos parágrafos também são interessantes. É por isso que este também é um comando útil para saber.