Eu uso o man
comando o tempo todo quando quero obter informações sobre um comando específico. Mas isso não me ajuda muito quando esse comando específico é um shell embutido. Por exemplo:
man cd
retorna:
No manual entry for cd
A minha pergunta é: é possível fazer man
também funcionar para todos shell builtin comandos (como cd
, alias
, history
, etc.), e palavras-chave (como if
, while
, [[
, {
, etc.)?
command-line
manpage
Radu Rădeanu
fonte
fonte
echo
é um comando interno, mas tem uma página de manual?echo
também é um comando do sistema (executável) localizado em/bin
. Você pode verificar isso usandotype -a echo
. O mesmo acontece comtime
e talvez outros.info bash
?Respostas:
O
help
comando quando é usado com a-m
opção pode exibir informações sobre comandos internos no formato pseudo-página de manual. Por exemplo:exibirá informações sobre o
cd
comando em um formato quase exatamente como em uma página de manual.A partir deste comando, você pode agrupar o
man
comando em uma função do seu.bashrc
arquivo da seguinte maneira:Depois disso
man
, também funcionará para todos os comandos e palavras-chave do shell embutido. Por exemplo:Exibirá:
fonte
man time
vsman 1 time
zsh
usuário a sua não têm tanta sorte: bugs.launchpad.net/ubuntu/+source/zsh/+bug/1242108 (sem páginas man instaladas)info
,help -m
, Por que não podemos apenas ter boas páginas do homem nos dias de hoje? De qualquer forma, obrigado!man type
, não produz uma descrição das opções "-a" ou "-t" no Ubuntu 14.04.4 .... e, no entanto, elas tá aí!Isso contém trechos de ajuda para os comandos internos, embora em um formato um pouco mais condensado que o
help
equivalente.fonte
Você pode instalar páginas de manual sobre o uso de um sistema POSIX para desenvolvimento como,
Ele fornecerá páginas de manual para os shell buildins.
Agora tente,
fonte
Essa solução funciona perfeitamente bem, mas também é uma piada, porque a primeira coisa que pensei ao ler sua pergunta foi 'Quem ainda literalmente usa o homem a partir da linha de comando? Todo mundo não apenas pesquisa no Google a página de manual que deseja (para obter coisas sofisticadas, como rolagem ilimitada)? '. Então percebi que os sites que eu Google geralmente têm ambos os tipos de comandos; por que não usá-los apenas para fornecer uma interface uniforme da página de manual em todos os comandos. Por isso, essa diversão nasceu.
Isso requer uma conexão com a Internet para todas as entradas que você ainda não procurou pelo menos uma vez. Ele também precisa desses dois aplicativos pequenos que estão faltando em uma instalação padrão do Ubuntu:
Estes não são absolutamente necessários, mas ajudam a torná-lo um pouco melhor. O Tidy limpará o HTML e o html2text formatará esse html como texto formatado (o que geralmente é bastante trivial, pois a maioria desses sites já está formatada em texto e apenas envolta em tags <pre>.
Agora tudo que você precisa fazer é adicionar isso ao final de
~/.profile
:Após o logout e o login novamente, você poderá digitar o seguinte:
e exibirá a página de manual para
cd
.Isso usa um diretório de dados (/ usr / share / iman) para minimizar nossos requisitos de rede (assim funcionará para entradas que você já encontrou antes mesmo sem a conexão; também para minimizar a carga neste site aleatório de páginas de manual do linux Encontrei com as entradas do sistema que também queremos). Se você não usar mais isso, remova-o para recuperar o espaço em disco.
Felizmente, o resto é bastante direto.
fonte
iman
função retorna a mesma saída queman bash-builtins
.