Autor Tópico: Como obter uma lista de comandos no linux?  (Lida 2649 vezes)

Offline eaxgrande

  • Usuário Ubuntu
  • *
  • Mensagens: 514
  • "Todo homem, por natureza, quer saber"
    • Ver perfil
Como obter uma lista de comandos no linux?
« Online: 10 de Abril de 2013, 10:33 »
Bom dia, pessoal

O que preciso digitar no terminal para obter uma lista completa de todos os comandos internos e externos do meu Ubuntu?

Abraços!
« Última modificação: 10 de Abril de 2013, 22:32 por eaxgrande »
Ubuntu-Mate 16.04 Xenial
Lubuntu-LXQt 20.04 Focal

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #1 Online: 10 de Abril de 2013, 10:52 »
No bash:

Código: [Selecionar]
compgen -A command

É o sistema usado pra completar (tab). Você pode passar uma string pra limitar.

Offline Tota

  • Usuário Ubuntu
  • *
  • Mensagens: 14.982
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #2 Online: 10 de Abril de 2013, 10:53 »
Ola

Você se referiu a "Linux", e como sabe o sistema é modular, variando em suas distibuições os pacotes, o shell e os modulos associados ao kernel, tornando dificil especificar o que deseja.

Todo pacote ou módulo possui um manual (que pode não estar instalado) invocado em terminal com o comando "man"

No Ubuntu o shell utilizado é o bash (bourne again shell) cujos comandos podem ser obtidos no site do desenvolvedor do bash

Porém ainda existem os módulos de suporte ao kernel, os pacotes de gerenciamento de disco e de dispositivos, cada qual com seus comandos

Todos os comandos, de forma genérica podem ser obtidos no guia foca linux disponível gratuitamente na rede para download ou leitura on line.

Me parece que está pensando de forma "windows" onde tudo é concentrado num unico shell (o prompt de comandos ou no win8 o windows power shell) e o GNU/Linux é bem diferente.

[]'s

Offline rodrigo.miguel

  • Usuário Ubuntu
  • *
  • Mensagens: 720
    • Ver perfil
    • LinuxUserVlog
Re: Como obter uma lista de comandos no linux?
« Resposta #3 Online: 10 de Abril de 2013, 10:56 »
Código: [Selecionar]
ls /bin/

ls /sbin/

ls /usr/bin/

ls /usr/sbin/
« Última modificação: 10 de Abril de 2013, 11:31 por rodrigo.miguel »

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #4 Online: 10 de Abril de 2013, 11:11 »
Rodrigo, existem dois problemas com essa abordagem:

a) Ele pode ter outros diretórios no PATH.
b) Só lista comandos externos.

O primeiro é contornável com algo como:

Código: [Selecionar]
IFS=':' read -r -a paths <<< "$PATH"
find "${paths[@]}" -maxdepth 1 \( -type f -o -type l \) -executable -printf '%f\n'

O segundo é dependente do shell.

Offline rodrigo.miguel

  • Usuário Ubuntu
  • *
  • Mensagens: 720
    • Ver perfil
    • LinuxUserVlog
Re: Como obter uma lista de comandos no linux?
« Resposta #5 Online: 10 de Abril de 2013, 11:16 »
An A-Z Index of the Bash command line for Linux
http://ss64.com/bash/

Ver outros diretórios no PATH
Código: [Selecionar]
echo $PATH
« Última modificação: 10 de Abril de 2013, 11:30 por rodrigo.miguel »

Offline Tota

  • Usuário Ubuntu
  • *
  • Mensagens: 14.982
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #6 Online: 10 de Abril de 2013, 11:46 »
Mas acredito que isto não irá listar os comandos externos de modulos acessorios como modprobe, rmmod, lspci, lsusb, dpkg, etc.(e seus equivalentes em outras distros não debian)  Além é claro, dos comandos de gerenciamento da interface e ambientes gráficos.

[]'s

Offline EdvaldoSCruz

  • Usuário Ubuntu
  • *
  • Mensagens: 2.327
  • Deus é bom e JESUS CRISTO é o filho dEle.(Jo14:23)
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #7 Online: 10 de Abril de 2013, 14:34 »
Bom dia, pessoal

O que preciso digitar no terminal para obter uma lista completa de todos os comandos internos e externos do meu Ubuntu?

Abraços!

Há mais aqui, que podem ser salvas no seu PC:

1- Clique aqui: Índice das Linhas de Comando Bash para Linux(tabela quase completa), disponível.

Ignorância é não aceitar e não submeter-se a CRISTO JESUS.
Para os Iniciantes, como eu, links de solucionar problemas rapidamente.

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #8 Online: 10 de Abril de 2013, 19:57 »
Considerei "comandos externos" todos os executáveis, acessíveis pra rodar diretamente em um terminal, sem a obrigatoriedade do uso de caminhos absolutos.

A diferença é que a minha primeira sugestão lista todos, internos e externos, em qualquer distro, com o bash de base. O segundo só lista os externos, e depende do bash e findutils.

Offline eaxgrande

  • Usuário Ubuntu
  • *
  • Mensagens: 514
  • "Todo homem, por natureza, quer saber"
    • Ver perfil
Re: Como obter uma lista de comandos no linux?
« Resposta #9 Online: 10 de Abril de 2013, 22:31 »
Obrigado amigos!

Obtive o que eu precisava em todas as respostas!

As instruções do irtigor eram o que eu estava procurando inicialmente. Porém, as listas sugeridas pelo rodrigo.miguel e pelo EdvaldoSCruz vieram complementar essas informações.

Já os comentários do Tota me fizeram vislumbrar o quanto o assunto é abrangente, já que em se tratando de comando externos existem "comandos" e "comandos"... ;D

Estou justamente estudando o GuiaFoca (finalmente criei vergonha na cara, ê, ê, ê!!!!!!!)

Só que o meu método de estudo é um tanto caótico. Apesar de eu seguir estritamente a sequência e ter entendido as explicações sucintas do referido método sobre comandos internos e externos, fiquei curioso e quis aprofundar nesse ponto. Sempre faço isso.

É como se eu tivesse seguindo por uma estrada e me interessasse por conhecer um atalho. Fico o tempo que acho necessário e depois volto pra estrada... Só que o andamento do estudo demoooraaaaaa por causa disso, he, he, he...

Grande abraço!
Ubuntu-Mate 16.04 Xenial
Lubuntu-LXQt 20.04 Focal