Cómo listar todos los comandos y más información del sistema con compgen
Para listar todos los comandos existentes en el sistema, así como los alias y funciones disponibles tenemos el comando compgen.
-abcdefgjksuv
Listar todos los alias
Para listar los alias disponibles en el sistema podemos usar el modificador -a:
compgen -a
Que indicará sólo el nombre de los alias, por lo que no es equivalente al comando alias, que lista los alias del sistema y el comando al que hacen referencia.
Listar todos los componentes integrados de Bash
Para listar todos los componentes integrados de Bash, podemos usar el modificador -b:
compgen -b
Listar todos los comandos del sistema
Para listar los comandos del sistema, compgen cuenta con el modificador -c que lista todos los ejecutables:
compgen -c
Listar las variables de entorno
Para listar todas las variables de entorno sin su valor, lo podemos hacer con:
compgen -v
Si quisiéramos ver las variables de entorno con su valor, podríamos usar otros comandos, como printenv
.
compgen tiene otro modificador que muestra una lista más corta de variables de entorno, que es -e:
compgen -e
Listar los ficheros del directorio actual
Podemos listar los ficheros y subdirectorios del directorio actual sin colores, sin ver tamaños, ni fechas, ni propietarios… es decir, como un ls austero, con el modificador -f:
compgen -f
Listar los usuarios y los grupos del sistema
Para listar los usuarios existentes en el sistema, compgen tiene el modificador -u; para listar los grupos, el modificador -g:
compgen -u compgen -g
Listar las palabras reservadas de Bash
compgen -k
Nos mostrará las palabras reservadas a la hora de programar, así como caracteres especiales como
{ } ! [[ ]]
por lo que nos puede venir de maravilla cuando estamos aprendiendo a programar en shell script.