Existe um equivalente de chamar a ajuda da função interna do python ('topics') mas no bash?

3

Eu gostaria de explorar man pages no bash usando algo semelhante à função de ajuda do Python ('topics'). Isso existe em bash?

Eu sei que o equivalente bash da ajuda do Python ('módulos') seria algo como:

dpkg –get-selection
    
por Yeow_Meng 09.10.2012 / 02:23

3 respostas

2

help('topics') mostra o índice de uma versão mais curta do manual de referência do Python. O mais próximo seria um índice do manual bash. Isso não incluiria comandos externos, como dpkg (que, do ponto de vista do bash, é comparável a uma biblioteca de terceiros para Python).

O comando help mostra uma lista de palavras cruzadas e palavras-chave. Se você adicionar o nome desse elemento incorporado (por exemplo, help alias ), receberá a ajuda para esse elemento incorporado. Isso é muito parecido com o que o Python oferece.

Para uma documentação mais completa, como em Python, leia o manual. Você pode lê-lo em um navegador da Web ou com o programa info ( info bash ). Info é um antigo navegador de hipertexto, com uma linguagem de marcação muito mais simples que a HTML. É usado principalmente pelo GNU. Se não houver um manual de informações para um comando, o programa info mostrará a página do manual. O Emacs oferece um navegador melhor para a documentação do Info.

Se você quiser comandos externos também, precisará encontrar o manual desses comandos. Você pode ver a lista de man pages para comandos (uma espécie de equivalente de help('topics') para a linha de comando sobre todo o sistema operacional) com apropos -s 1 '' (1 é o seção para comandos de usuário; '' significa procurar a string vazia, isto é, retornar tudo). Observe que em um sistema típico, isso retornará milhares, talvez até dezenas de milhares de ocorrências, por isso não é uma maneira prática de explorar os comandos. Há muita coisa demais.

Se você sabe mais ou menos sobre o assunto, use o comando apropos com uma palavra-chave, por exemplo, apropos -s 1 module para ver uma lista de comandos cuja descrição curta inclui "módulo" - é um bando heterogêneo. Você pode então chamar man para procurar uma página de manual específica.

    
por 10.10.2012 / 02:06
6

O Bash tem uma função de ajuda, mas só pode informar sobre as funções internas do Bash. Caso contrário, você está realmente preso ao comando man, que tem algumas opções úteis.

Tente o seguinte

man -a intro

man -k *keyword*

man -K *keyword*
    
por 09.10.2012 / 02:42
0

Como você mencionou dpkg , provavelmente está usando o debian (ou o ubuntu ou algum outro derivativo do Debian).

Nesse caso, você pode explorar páginas de manual para pacotes específicos usando dlocate -lsman <pkgname> (ou mesmo dpkg -L <pkgname> | grep '/usr/share/man/.*gz' se você não tiver dlocate instalado) - isso listará todas as páginas man pertencentes a um pacote.

Principalmente útil para RTFM direcionado em pacote (s) específico (s), mas não tanto para descobertas fortuitas.

(divulgação completa: eu sou o autor do dlocate e mantenedor do pacote no debian, então eu sou meio inclinado a usá-lo).

    
por 09.10.2012 / 03:47

Tags