Marvin Pascale

[B.Log]

01 Gennaio 2023

Special Di Capodanno

In questo special vedremo i 50 comandi Linux che ogni sviluppatore che si creda tale deve conoscere. Tralasciando le inutili e sterili polemiche vi dico solo che ho seguito la mia vocazione e sono diventato un Sysadmin perché credevo e credo fermamente che ogni sviluppatore meriti un eroe.

I 50 comandi

Di seguito presenterò i comandi uno ad uno con una sintetica descrizione e un esempio pratico.

  1. ls - Elenca il contenuto di una directory.

    • Esempio: ls /var/www/ elencherà il contenuto della directory /var/www.
  2. pwd - Stampa la directory di lavoro corrente.

    • Esempio: pwd e riceverai come output il percorso alla cartella in cui ti trovi.
  3. cd - Cambia la directory di lavoro corrente.

    • Esempio: cd /var/www/ cambierà la directory di lavoro corrente in /var/www.
  4. mkdir - Crea una nuova directory.

    • Esempio: mkdir cartella creerà una nuova directory chiamata cartella.
  5. cp - Copia un file o una directory.

    • Esempio: cp file.txt /var/tmp/ copierà il file file.txt nella directory /var/tmp.
  6. mv - Sposta un file o una directory.

    • Esempio: mv file.txt /var/tmp/ sposterà il file file.txt nella directory /var/tmp.
  7. rm - Rimuove un file o una directory.

    • Esempio: rm file.txt rimuoverà il file file.txt, mentre rm -r cartella rimuoverà la directory cartella e tutto il suo contenuto.
  8. touch - Crea un nuovo file vuoto.

    • Esempio: touch file.txt creerà un nuovo file vuoto chiamato file.txt.
  9. ln - Crea un collegamento a un file o una directory.

    • Esempio: ln -s /var/tmp/file.txt file.txt creerà un collegamento simbolico a /var/tmp/file.txt chiamato file.txt nella directory corrente.
  10. cat - Visualizza il contenuto di un file.

    • Esempio: cat file.txt visualizzerà il contenuto del file file.txt nel terminale.
  11. clear - Pulisce l’output nel terminale.

    • Esempio: clear e la magia si compierà. NB: funziona anche con “ctrl + l
  12. echo - Stampa un messaggio nel terminale.

    • Esempio: echo “Ciao, mondo!” stamperà il messaggio “Ciao, mondo!” nel terminale.
  13. less - Visualizza un file con impaginazione.

    • Esempio: less file.txt ti permetterà di visualizzare il contenuto di file.txt una pagina alla volta.
  14. man - Visualizza la pagina di manuale per un comando.

    • Esempio: man ls visualizzerà la pagina man per il comando ls, che ne descrive l’utilizzo e le opzioni.
  15. uname - Visualizza informazioni sul sistema corrente.

    • Esempio: uname -a visualizzerà tutte le informazioni sul sistema corrente, inclusa la versione del kernel e il nome host della macchina.
  16. whoami - Visualizza l’utente corrente.

    • Esempio: whoami visualizzerà il nome utente dell’utente corrente.
  17. tar - Archivia e comprime file e directory.

    • Esempio: tar -czf archivio.tar.gz cartella/ creerà un archivio compresso chiamato archivio.tar.gz dal contenuto della directory cartella.
  18. grep - Cerca un modello in un file.

    • Esempio: grep “error” log.txt cercherà nel file log.txt il pattern “error” e stamperà tutte le righe che corrispondono.
  19. head - Visualizza le prime righe di un file.

    • Esempio: head -n 10 file.txt visualizzerà le prime 10 righe di file.txt.
  20. tail - Visualizza le ultime righe di un file.

    • Esempio: tail -n 10 file.txt visualizzerà le ultime 10 righe di file.txt.
  21. diff - Confronta le differenze tra due file.

    • Esempio: diff file1.txt file2.txt confronterà i contenuti di file1.txt e file2.txt e stamperà le differenze tra di essi.
  22. cmp - Confronta il contenuto di due file byte per byte.

    • Esempio: cmp file1.txt file2.txt confronterà il contenuto di file1.txt e file2.txt byte per byte e riporterà eventuali differenze.
  23. comm - Confronta il contenuto di due file ordinati riga per riga.

    • Esempio: comm file1.txt file2.txt confronterà i contenuti di file1.txt e file2.txt, che dovrebbero essere entrambi ordinati, e stamperà le righe che sono univoche per ciascun file.
  24. sort - Ordina le righe di un file o standard output.

    • Esempio: sort file.txt ordina alfabeticamente le righe di file.txt.
  25. export - Esporta una variabile di shell.

    • Esempio: export VARIABILE=“valore” creerà una variabile di shell chiamata VARIABILE con il valore “valore”.
  26. zip - Comprime i file in un archivio zip.

    • Esempio: zip archivio.zip file1.txt file2.txt creerà un archivio ZIP chiamato archivio.zip contenente i file file1.txt e file2.txt.
  27. unzip - Estrae i file da un archivio zip.

    • Esempio: unzip archivio.zip estrarrà il contenuto dell’archivio zip archivio.zip.
  28. ssh - Si connette a un server remoto utilizzando il protocollo ssh.

    • Esempio: ssh [email protected] ci si connetterà al server su 192.168.100.1 come utente marvin.
  29. service - Controlla i servizi di sistema.

    • Esempio: service apache2 start avvierà il server Web Apache.
  30. ps - Visualizza informazioni sui processi in esecuzione.

    • Esempio: ps aux visualizzerà un elenco di tutti i processi in esecuzione e il relativo utilizzo delle risorse.
  31. kill - Invia un segnale a un processo per terminarlo.

    • Esempio: kill 12345 invierà il segnale per terminare il processo con l’ID processo 12345.
  32. killall - Termina tutti i processi con un nome specificato.

    • Esempio: killall tuxcart terminerà tutti i processi con il nome tuxcart.
  33. df - Visualizza le informazioni sullo spazio su disco disponibile sui filesystem montati.

    • Esempio: df -h visualizzerà lo spazio su disco disponibile in un formato leggibile dall’uomo (gigabyte o megabyte).
  34. mount - Monta un filesystem.

    • Esempio: mount /dev/sda1 /mnt/usb monterà la partizione /dev/sda1 nel punto di montaggio /mnt/usb.
  35. chmod - Modifica i permessi di un file o di una directory.

    • Esempio: chmod 755 file.txt darà i permessi di lettura, scrittura ed esecuzione al proprietario e i permessi di lettura ed esecuzione a tutti gli altri per il file file.txt.
  36. chown - Modifica la proprietà di un file o di una directory.

    • Esempio: chown utente:gruppo file.txt cambierà il proprietario di file.txt in utente e la proprietà del gruppo in gruppo.
  37. ifconfig - Configura i parametri dell’interfaccia di rete.

    • Esempio: ifconfig eth0 up abiliterà l’interfaccia di rete eth0.
  38. traceroute - Traccia il percorso dei pacchetti verso una destinazione.

    • Esempio: traceroute linux.it traccerà il percorso dei pacchetti dal sistema corrente alla destinazione linux.it.
  39. wget - Scarica un file da una url.

  40. ufw e firewall-cmd - Un frontend per la gestione di un firewall.

    • Esempio: ufw allow ssh o firewall-cmd –zone=public –add-service=ssh consentirà le connessioni in entrata al servizio SSH.
  41. iptables - Uno strumento di gestione del firewall per Linux.

    • Esempio: iptables -A INPUT -p tcp –dport 22 -j ACCEPT consentirà le connessioni in entrata alla porta TCP 22 (la porta predefinita per ssh).
  42. apt - Un gestore di pacchetti per sistemi basati su Debian.

    • Esempio: apt update && apt full-upgrade aggiornerà tutti i pacchetti installati.
  43. yum (dnf) - Un gestore di pacchetti per sistemi basati su Red Hat.

    • Esempio: yum update aggiornerà tutti i pacchetti installati.
  44. cal - Visualizza un calendario.

    • Esempio: cal visualizzerà il calendario del mese corrente.
  45. alias - Crea un alias per un comando.

    • Esempio: alias ll=‘ls -al’ creerà un alias ll che esegue il comando ls -al.
  46. dd - Copia i dati da una posizione a un’altra.

    • Esempio: dd if=/dev/sda of=disk.img creerà un file immagine chiamato disk.img del contenuto del dispositivo /dev/sda.
  47. whereis - Mostra le posizioni di un comando.

    • Esempio: whereis ls mostrerà le posizioni del comando ls all’interno del sistema.
  48. whatis - Mostra una breve descrizione di un comando.

    • Esempio: whatis ls mostrerà una breve descrizione del comando ls.
  49. top - Visualizza informazioni sui processi in esecuzione.

    • Esempio: top visualizzerà un elenco di processi in esecuzione e il loro utilizzo delle risorse in tempo reale. NB: per uscire premere q o “ctrl + c
  50. passwd - Cambia la password per un utente.

    • Esempio: passwd marvin richiederà di inserire e confermare una nuova password per l’utente marvin.
  51. BONUS - Esiste un manuale online (https://linux.die.net/man/1/comando) per praticamente ogni comando ed è consultabile in maniera semplice.

Da oggi non avrai più scuse per gestire autonomamente il tuo pc e gli ambienti di DEV/UAT.


Le opinioni in quanto tali sono opinabili e nulla ti vieta di approfondire l’argomento.

Risorse: