Linux: elencare tutti i comandi del terminale
Vi siete mai chiesti quanti e quali sono i comandi a disposizione nel terminale? Con i metodi seguenti sarà possibile avere una lista completa di tutte le parole chiave, comandi e programmi accessibili nella console.
Metodo 1:
Premere due volte consecutive il tasto "TAB" nel terminale, quindi rispondete "y" alla domanda che viene visualizzata. Se non dovesse funzionare, come prima cosa inserite uno spazio e poi fate quanto descritto sopra.
$ Display all 2846 possibilities? (y or n) ! ./ : [ [[ ]] { } 2to3-2.7 411toppm 7z 7za 7zr a2disconf a2dismod a2dissite ... ...
Se inserite una lettera o una qualunque combinazione di lettere e poi premete due volte "TAB" nel terminale, vi verrà chiesto se volete visualizzare la lista dei comandi che iniziano con quella specifica lettera/combinazione di lettere.
$ f
Display all 120 possibilities? (y or n)
f2py file-rename foo2zjs-pstops
f2py2.7 filterdiff foo2zjs-wrapper
f2py3 finalrd foomatic-rip
f2py3.8 fincore for
factor find fprintd-delete
faillock findfs fprintd-enroll
faillog findmnt fprintd-list
faked-sysv findrule fprintd-verify
faked-tcp firefox free
fakeroot fitstopnm from
fakeroot-sysv fixcvsdiff fsadm
fakeroot-tcp fixparts fsck
fallocate flatpak fsck.btrfs
false flex fsck.cramfs
fatlabel flex++ fsck.exfat
fc flipdiff fsck.ext2
fc-cache flock fsck.ext3
fc-cat fmt fsck.ext4
fc-conflist fold fsck.fat
fcgistarter fonttosfnt fsck.hfs
fc-list foo2ddst fsck.hfsplus
fc-match foo2ddst-wrapper fsck.jfs
fc-pattern foo2hbpl2 fsck.minix
Con una combinazione...
$ gp
gparted gpgcompose gpgsplit gpic
gpartedbin gpgconf gpgtar gprof
gpasswd gpg-connect-agent gpgv gpu-manager
gpg gpgparsemail gpg-wks-server
gpg-agent gpgsm gpg-zip
Metodo 2:
Usando il comando "compgen -c" si ottiene una lista non ordinata alfabeticamente dei comandi:
$ compgen -c alert egrep fgrep grep l la ll ls if then else elif fi case esac for ... ...
Consiglio di usare "compgen --help" per conoscere le varie opzioni di utilizzo del comando.
$ compgen --help compgen: compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word] Visualizza i possibili completamenti a seconda delle opzioni. È pensata per essere usata all'interno di una funzione di shell per generare dei possibili completamenti. Se viene fornito l'argomento opzionale PAROLA, vengono generate le corrispondenze relative a PAROLA. Stato di uscita: Restituisce successo a meno che non sia fornita una opzione non valida o si riscontri un errore.
Metodo 3:
Script che elenca tutti i comandi corredati di una breve descrizione e li inserisce nel file "lista_comandi.txt" :
for c in $(compgen -ac | sort) ; do whatis $c | tee -a ~/lista_comandi.txt ; done
Il precedente codice deve essere scritto con l'ausilio di un editor di testo, ad esempio nano. Dopo avere salvato il file (io l'ho chiamato "Lista") bisogna renderlo eseguibile in questo modo:
$ chmod u+x Lista
e poi lo si può avviare:
$ ./Lista
Lasciatelo lavorare fina alla fine e vi ritroverete il file "lista_comandi.txt" pronto per essere consultato con un normale editor di testo.
Questo script non è opera mia, ma di un utente, "Tony" del forum di Linux Mind Italia. Questa la discussione) in cui viene consigliato lo script.