1. Introduzione alla command line di Linux
Perché la command line?
Prima di andare a fondo, rispondiamo alla domanda principale: perché mai usare la command line se su Linux ci sono delle belle interfacce grafiche? La command line (Command Line Interface, CLI) è uno strumento da veri pro, sysadmin e programmatori. Con la CLI puoi fare le cose più in fretta, automatizzare le rotture di scatole e persino fare un po' di magia dietro le quinte senza mai staccare le mani dalla tastiera. La CLI è, in pratica, un superpotere nel mondo Linux che ti rende davvero efficiente.
Terminali, shell e CLI
Prima di scrivere il tuo primo comando, vediamo cosa si nasconde dietro la magia del terminale.

1. Terminale
Il terminale è un programma che ti dà accesso alla command line. Ti permette di interagire con il sistema operativo tramite testo. Su Linux ci sono questi terminali famosi:
- GNOME Terminal (su GNOME).
- Konsole (su KDE).
- xterm (leggendario, ma un po' vecchiotto).
- Windows Terminal per WSL
2. Shell
La shell è un software che interpreta i comandi e li passa al sistema operativo. Su Linux la shell più popolare è Bash (Bourne Again Shell). Alternative:
- Zsh: shell avanzata per chi ama personalizzare tutto.
- Sh: la classica shell Unix (minimalista).
Per iniziare useremo Bash, che è lo standard.
2. Struttura di un comando
Un comando nella CLI ha un formato preciso, e capirlo è la chiave per usarlo bene.
Formato base di un comando
Ogni comando è fatto da tre parti:
[Comando] [Opzioni] [Argomenti]
- Comando: quello che chiedi al sistema di fare. Per esempio,
ls(mostra la lista dei file). - Opzioni (o flag): modificano il comportamento del comando. Per esempio,
-l(lista dettagliata perls). - Argomenti: dati extra che passi al comando, tipo il percorso di un file o di una cartella.
Esempio:
ls -l /home
Qui:
ls— comando;-l— opzione per mostrare la lista dettagliata;/home— argomento (la cartella di cui vogliamo vedere il contenuto).
3. Navigazione e comandi base della CLI
Partiamo dai comandi più semplici, quelli che ti fanno vedere come interagire col sistema.
1. Chi sono? Dove sono?
whoami: mostra l'utente attuale.$ whoami studentepwd(print working directory): mostra la directory corrente.$ pwd /home/studente
Nella maggior parte delle shell Unix/Linux il simbolo $ viene usato come prompt nel terminale. Indica che il sistema è pronto a ricevere un comando. Il simbolo $ serve per separare i comandi che l'utente deve scrivere dall'output di quei comandi.
2. Diamo un'occhiata in giro
ls(list): mostra il contenuto della directory attuale.$ ls Documenti Download MusicaOpzioni utili:
-l: info dettagliate su file e cartelle.-a: mostra anche i file nascosti.
Esempio:
ls -la
3. Spostarsi tra le cartelle
cd(change directory): ti permette di cambiare directory.$ cd /home $ pwd /home
4. Scorciatoie da tastiera del terminale
La command line offre un sacco di combinazioni di tasti utili:
Ctrl+C: interrompe il comando in esecuzione.Ctrl+D: termina la sessione attuale.Tab: autocompleta file o cartelle. Funzione super utile - usala spesso.Freccia Su/Giù: scorri tra i comandi recenti.
Nota pratica: se vuoi sentirti un vero hacker, premi Ctrl+C guardando altrove — stile perfetto.
5. Esempi di comandi semplici: iniziamo a creare!
Facciamo un esercizio pratico e risolviamolo con la CLI.
Compito:
- Scoprire l'utente attuale.
- Andare nella home directory.
- Vedere cosa c'è dentro.
- Creare una cartella
test_folder. - Controllare se la cartella è stata creata.
Soluzione:
# Scopriamo l'utente attuale
whoami
# Andiamo nella home directory
cd ~
# Vediamo cosa c'è nella directory
ls
# Creiamo la cartella
mkdir test_folder
# Controlliamo che ci sia
ls -l
Spiegazione dei passaggi:
- Con
whoamiabbiamo visto con quale utente stiamo lavorando. - Con
cd ~siamo andati nella home directory. Il simbolo~indica sempre la cartella home dell'utente attuale. - Il comando
lsha mostrato il contenuto della directory prima e dopo aver creato la cartella.
6. Errori tipici e come evitarli
Lavorare con la command line porta sempre qualche errore, soprattutto all'inizio. Ecco alcune situazioni comuni:
Spazi nei nomi di file/cartelle. Se lavori con nomi che hanno spazi, mettili sempre tra virgolette. Per esempio:
mkdir "Mia Cartella"Percorsi sbagliati. Se vedi il messaggio
Nessun file o directory, vuol dire che hai scritto un percorso che non esiste.cd /percorso/sconosciutoRefusi nei comandi. Il terminale non perdona:
lssinvece dilsè un altro comando (o magari non esiste proprio).
7. Perché serve tutto questo?
La CLI è uno strumento potente per gestire qualsiasi sistema. Si usa ovunque: dalla configurazione dei server alla scrittura di script automatizzati. Ai colloqui spesso chiedono comandi da terminale, quindi quello che impari ora ti tornerà utile nel tuo arsenale.
In più la CLI ti aiuta a imparare a usare sistemi di versionamento come git, sviluppare applicazioni server e scrivere script per automatizzare le cose. Tutto parte da queste basi: struttura dei comandi, navigazione tra le cartelle e scorciatoie da tastiera.
Un po' di pratica
Prova questo esercizio:
- Scoprire la data attuale.
- Creare una cartella
logs. - Dentro, creare un file
log.txtcon la data attuale.
Esempio di soluzione
# Scopriamo la data attuale
date
# Creiamo la cartella logs
mkdir logs
# Scriviamo la data nel file log.txt
date > logs/log.txt
# Vediamo il contenuto del file
cat logs/log.txt
Ora sei pronto per il prossimo livello — lavorare con il filesystem e il suo contenuto!
8. Cos'è il plugin CodeGym e a cosa serve?
Puoi risolvere gli esercizi sia sul sito che nell'IDE JetBrains con il plugin CodeGym installato e Shell Script (di solito Shell Script è già installato).
Se non hai un IDE installato, ti consigliamo di installare IntelliJ IDEA Community Edition.
- Istruzioni su come installare IntelliJ IDEA.
- Come creare il primo progetto.
Puoi scaricare il plugin CodeGym dal marketplace di Jetbrains, direttamente dal tuo ambiente di sviluppo.
Vai su "Impostazioni", Windows/Linux
File - Settings, MacOSIntelliJ IDEA - Preferences. Se non trovi la sezione impostazioni, apri un progetto qualsiasi o creane uno nuovo.Nella finestra che si apre, nel menu laterale scegli la sezione Plugins e apri la scheda Marketplace. Nella barra di ricerca scrivi codegym
- Scegli il plugin e clicca sul pulsante Install.
- Riavvia (Restart IDE) IntelliJ IDEA per iniziare a usare il plugin.
- Vedrai l'interfaccia un po' cambiata e il pulsante Accedi all'account nella barra orizzontale in alto.
Per aprire un nuovo esercizio, clicca su
Tasksnel pannello verticale a sinistra, poi sulla card dell'esercizio nel pannello laterale sinistro, e nella finestra popup clicca su Apri:- Si aprirà una finestra con due tab. Una con il testo dell'esercizio, l'altra per scrivere il codice. E un messaggio da shellcheck per controllare i tuoi shell script - accetta pure
- Ora scrivi la soluzione e clicca su
Validateper inviare l'esercizio per la verifica o eseguilo in locale.
Cliccando si aprirà una finestra per accedere al tuo account, dove dovrai inserire la tua chiave segreta. Ricorda che puoi trovare la chiave segreta nella sezione “Impostazioni” → “Sicurezza e accesso”.
Plugin installato! Ora puoi risolvere gli esercizi.
Sincronizzazione esercizi sito — plugin
La lista degli esercizi e il loro stato si aggiorna automaticamente, ogni cinque minuti o dopo aver inviato un esercizio per la verifica (server CodeGym).
Quindi se hai risolto un esercizio sul sito, nel plugin sarà segnato come risolto. Se vuoi aggiornare subito lo stato degli esercizi, clicca sul tuo avatar (in alto a destra) e nel menu a tendina scegli Sincronizza esercizi:
Modalità principiante nel plugin
Questa è una versione semplificata per chi non ha (o ha poca) esperienza con IntelliJ IDEA e altri ambienti di sviluppo. Alcune funzioni di IntelliJ IDEA sono nascoste. Per disattivare questa modalità clicca sul tuo avatar (in alto a destra) e nel menu a tendina scegli Impostazioni:
Come nascondere il pannello di navigazione del plugin in modalità PRO
Clicca su Impostazioni (⚙️) e togli la spunta da "Mostra il pannello di navigazione del plugin":

GO TO FULL VERSION