「Dica」CLI "compgen"

:wave:t2: No caso de esquecermos algum comando, podemos chamar o compgen no Terminal adicionando uma flag:

compgen -a: Lista os “alias”;
compgen -b: Lista os comandos shell builtins, exemplos: history, suspend;
compgen -c: Lista todos os comandos;
compgen -d: Lista todos os diretórios do diretório atual, inclusive os ocultos;
compgen -e: Lista todas as variaveis shell exportadas;
compgen -f: Lista todos os arquivos e documentos;
compgen -g: Lista todos os grupos de pacotes instalados;
compgen -j: Lista os trabalhos;
compgen -k: Lista comandos de estruturas de programação exemplo: if, else, while, do;
compgen -s: Lista os serviços;
compgen -u: Lista os “alias” dos usuários;
compgen -v: Lista as variaveis que podem ser usadas num shell script;

English Version

compgen -a: Names of alias;
compgen -b: Names of shell builtins
compgen -c: Names of all commands
compgen -d: Names of directory
compgen -e: Names of exported shell variables
compgen -f: Names of file and functions
compgen -g: Names of groups
compgen -j: Names of job
compgen -k: Names of Shell reserved words
compgen -s: Names of service
compgen -u: Names of userAlias names
compgen -v: Names of shell variables

Testei um a um e alguns não tem um retorno, outros vem um comando por exemplo o -a mostrava apenas o comando ls. Alguns eu conhecço como comandos que podem ser usados dentro de estruturas de programação como o -k ou as variaveis que podem ser usadas em um bash como a -v; Mas comandos como o -j não retornou nada, acredito que eu não tenho nada instalado para esta flag listar ou depende de eu estar executando algo. Interessante este comando compgen

E tem as dicas que o @Capezotte passou usando strings depois da flag para facilitar a procura, nem precisa usar o grep… String direto já funciona. Legal. :smile:

Edited: Para cirar a versão em Português e uma melhor explicação de cada flag. Obrigado Capezotte. Ah me corrijam se eu digitei algo errado que não está certo :sweat_smile: :joy:Edited/

:pray:t2:

2 Curtidas

Dá também para usar ele para “pesquisar” comandos, da seguinte maneira:

compgen -c se # Listar todos os comandos que começam com se
compgen -v DBUS # Listar todas as variáveis que começam com DBUS
1 Curtida