CodeGym /Corsi /Docker SELF /Basi della command line (CLI): struttura dei comandi, lav...

Basi della command line (CLI): struttura dei comandi, lavoro con il terminale

Docker SELF
Livello 1 , Lezione 4
Disponibile

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 per ls).
  • 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
    studente
    
  • pwd (print working directory): mostra la directory corrente.

    $ pwd
    /home/studente
    
Importante!

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  Musica
    

    Opzioni 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:

  1. Scoprire l'utente attuale.
  2. Andare nella home directory.
  3. Vedere cosa c'è dentro.
  4. Creare una cartella test_folder.
  5. 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:

  1. Con whoami abbiamo visto con quale utente stiamo lavorando.
  2. Con cd ~ siamo andati nella home directory. Il simbolo ~ indica sempre la cartella home dell'utente attuale.
  3. Il comando ls ha 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/sconosciuto
    
  • Refusi nei comandi. Il terminale non perdona: lss invece di ls è 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:

  1. Scoprire la data attuale.
  2. Creare una cartella logs.
  3. Dentro, creare un file log.txt con 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.

  1. Istruzioni su come installare IntelliJ IDEA.
  2. Come creare il primo progetto.

Puoi scaricare il plugin CodeGym dal marketplace di Jetbrains, direttamente dal tuo ambiente di sviluppo.

  1. Vai su "Impostazioni", Windows/Linux File - Settings, MacOS IntelliJ IDEA - Preferences. Se non trovi la sezione impostazioni, apri un progetto qualsiasi o creane uno nuovo.

  2. Nella finestra che si apre, nel menu laterale scegli la sezione Plugins e apri la scheda Marketplace. Nella barra di ricerca scrivi codegym

  3. Scegli il plugin e clicca sul pulsante Install.
  4. Riavvia (Restart IDE) IntelliJ IDEA per iniziare a usare il plugin.
  5. Vedrai l'interfaccia un po' cambiata e il pulsante Accedi all'account nella barra orizzontale in alto.
  6. 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”.

  7. Per aprire un nuovo esercizio, clicca su Tasks nel pannello verticale a sinistra, poi sulla card dell'esercizio nel pannello laterale sinistro, e nella finestra popup clicca su Apri:

  8. 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
  9. Ora scrivi la soluzione e clicca su Validate per inviare l'esercizio per la verifica o eseguilo in locale.

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":

Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION