Cos'è una CLI?

Un'interfaccia della linea di comando (CLI) è un meccanismo software utilizzato per interagire con il sistema operativo tramite la tastiera. Un altro meccanismo è l'interfaccia grafica (GUI), oggi ampiamente utilizzata per tutte le applicazioni e i sistemi software. La GUI è comoda per navigare visivamente e consente di fare clic su icone e immagini per eseguire operazioni e attività. Tuttavia, la GUI non è efficiente per le attività di amministrazione del sistema, specialmente se l'ambiente è virtuale o remoto. Con un'interfaccia della linea di comando, è possibile immettere comandi di testo per configurare, navigare o eseguire programmi su qualsiasi server o sistema informatico. Tutti i sistemi operativi, inclusi Linux, macOS e Windows, forniscono una CLI per un'interazione più rapida con il sistema.

Quali sono i vantaggi di una CLI?

Un'interfaccia della linea di comando (CLI) offre diversi vantaggi.

Efficienza

Grazie alla CLI puoi risparmiare tempo evitando di cercare e fare clic su singoli file, poiché ti consente di eseguire operazioni su più file simultaneamente con un unico comando di testo. Se conosci i comandi, puoi navigare e interagire rapidamente con il tuo sistema. Inoltre, è possibile creare script che eseguono diversi comandi della CLI per automatizzare attività monotone o ripetitive.

Accesso remoto

Le applicazioni della CLI spesso consumano meno risorse di rete rispetto alle applicazioni grafiche. Ciò rende le applicazioni della CLI adatte a sistemi con funzionalità hardware limitate o ambienti server remoti.

È possibile gestire i server in remoto inviando comandi su una shell (interprete di comandi) sicura, anche con connessioni a bassa larghezza di banda. È il metodo preferito per la gestione di server e istanze cloud, specialmente in ambienti headless in cui non è disponibile alcuna interfaccia grafica.

Risoluzione dei problemi

Per gli sviluppatori e gli amministratori di sistema, l'utilizzo delle interfacce della linea di comando è una capacità preziosa che promuove una comprensione più approfondita del sistema sottostante. Può aumentare il livello di esperienza con i vari strumenti e utilità, e migliorare la gestione degli errori.

Ad esempio, puoi utilizzare una CLI per visualizzare i log di sistema e trovare rapidamente messaggi di errore completi e informazioni di debug. Inoltre, i comandi basati su testo possono essere documentati facilmente. Questo aiuta a garantire la riproducibilità delle attività e a semplificare la risoluzione dei problemi in futuro.

Quali sono i casi d'uso di una CLI?

Grazie alla sua versatilità, l'interfaccia della linea di comando (CLI) è indicata in molti casi d'uso. Ad esempio, se sei un amministratore di sistema, un ingegnere del software, un data scientist o un utente tecnico che desidera un maggiore controllo, l'utilizzo della CLI può offrirti molti vantaggi. Di seguito riportiamo alcuni esempi.

Amministrazione del sistema

Gli amministratori di sistema utilizzano le CLI per risolvere problemi relativi al sistema, controllare le configurazioni del sistema operativo e modificare o aggiornare le configurazioni sui computer remoti. Possono eseguire comandi e sistemi di controllo su larga scala.

Sviluppo software

Gli sviluppatori di software utilizzano regolarmente gli strumenti CLI per risparmiare tempo e semplificare i flussi di lavoro. Ad esempio, accedono spesso a librerie di terze parti mentre lavorano. Se aggiungono riferimenti a queste librerie utilizzando una CLI, possono farlo inserendo con un comando anziché lasciando le istruzioni per cercare la libreria tramite la GUI. Questo approccio consente di risparmiare tempo sia allo sviluppatore sia ai futuri utenti che interagiranno con il sistema.

Cloud computing

Negli ambienti cloud, una CLI è essenziale per la gestione di macchine virtuali, container, servizi cloud e configurazioni di server. Gli sviluppatori e gli amministratori utilizzano le CLI per interagire con le API dei provider di servizi cloud, automatizzare il provisioning delle risorse e implementare applicazioni.

Gestione della rete

Gli amministratori di rete utilizzano le CLI per configurare router, switch, firewall e altri dispositivi di rete. Gli strumenti CLI sono utili per monitorare il traffico di rete, risolvere problemi di connettività e implementare policy di sicurezza. Gli addetti ai test di intrusione utilizzano gli strumenti della linea di comando anche per la scansione delle vulnerabilità, la ricognizione della rete e l'analisi degli incidenti.

Come funziona una CLI?

Un'interfaccia della linea di comando (CLI) è un'interfaccia basata su testo in cui è possibile immettere comandi che interagiscono con il sistema operativo di un computer. La CLI funziona con l'aiuto della shell (interprete di comandi) predefinita, che si trova tra il sistema operativo e l'utente. 

Shell della CLI

Una shell si riferisce a un programma che funge da intermediario tra l'utente e il sistema operativo. Gli esempi includono Bash, cmd.exe, PowerShell e altri per funzioni più specifiche.

La shell è responsabile della gestione di varie attività come l'analisi dei comandi, la gestione dell'ambiente e l'esecuzione dei processi. Le shell supportano anche varie funzionalità, come quelle seguenti:

  • Cronologia dei comandi, in cui è possibile accedere ai comandi immessi in precedenza utilizzando i tasti freccia o altre scorciatoie
  • Reindirizzamento di input e output
  • Concatenamento, in cui si collega l'output di un comando all'input di un altro, e gestione delle variabili di ambiente

Inoltre, l'ambiente shell può essere personalizzato. A tale scopo, è possibile impostare variabili di ambiente, definire alias (scorciatoie per comandi più lunghi) e creare script di shell per l'automazione o le attività ripetute.

Come funzionano i comandi

Quando si immette un comando nella CLI, si verificano le seguenti operazioni: 

  1. L'interprete della linea di comando della shell analizza il comando immesso per comprenderne la struttura e separare il nome del comando, le opzioni e gli argomenti.
  2. La shell cerca il nome del comando nell'elenco dei comandi disponibili. Il nome del comando rappresenta l'operazione che l'utente desidera che il sistema operativo esegua.
  3. Cerca nella variabile PATH del sistema (un elenco di cartelle in cui si trovano i file di sistema) per trovare il file corrispondente associato al comando.
  4. La shell della CLI richiama il file appropriato passando come input le opzioni e gli argomenti specificati.
  5. Il sistema operativo esegue le operazioni richieste.
  6. Può produrre output, come messaggi informativi, messaggi di errore, i dati richiesti o il risultato dell'operazione.
  7. La shell della CLI visualizza l'output, in modo che l'utente possa vedere il risultato del comando.

La shell della CLI funziona a ciclo continuo, in attesa dell'immissione di un altro comando. Il processo di immissione, analisi, esecuzione e visualizzazione dell'output dei comandi si ripete a ogni interazione con la shell della CLI. Ciò fornisce un'interfaccia continua per le interazioni basate su comandi.

Come si apre l'interfaccia della linea di comando sul sistema?

Ogni sistema operativo principale prevede un modo leggermente diverso di accedere all'interfaccia della linea di comando (CLI).

Windows

Ecco come aprire la CLI in Windows su Windows 8 o versioni successive:

  1. Premi il tasto Windows e "S"
  2. Digita "cmd" nel campo di ricerca
  3. Fai clic con il pulsante destro del mouse su "Prompt dei comandi" e seleziona "Esegui come amministratore"
  4. Ora puoi inserire un prompt di comando

Mac

Ecco come aprire la CLI su Mac:

  1. Individua l'applicazione Finder, che di solito si trova sulla barra degli strumenti
  2. Passa a /Applicazioni/Utilità
  3. Seleziona "Terminale"
  4. Ora puoi inserire un prompt di comando

Linux

Linux fornisce un modo semplice per accedere alla CLI utilizzando la scorciatoia CTRL+ALT+T.

In alternativa, è possibile usare ALT+F2 e poi inserire "gnome-terminal".

Quali sono alcuni comandi comuni delle interfacce della linea di comando?

Un'interfaccia della linea di comando (CLI) ha molti comandi diversi per diversi tipi di attività. I comandi variano leggermente da un sistema operativo all'altro. Di seguito forniamo diversi esempi di comandi.

Comandi del file system

Comando della CLI

Windows

Linux

Cambia cartella

cd

cd

Ultimi file

dir

ls

Crea una cartella

mkdir

mkdir

Rimuovi cartella

rmdir

rmdir

Copia file

copy

cp

Sposta file

trasferire

mv

Rinomina file

ren

mv

Visualizza file

type

cat

Elimina file

del

rm

Modifica le autorizzazioni

cacls/chmod

chmod

Comandi di rete

Comando della CLI

Windows

Linux

Ping

ping

ping

Traceroute

tracert

traceroute

Configurazione di rete

ipconfig

ifconfig

Tabella di routing

route

route

Ricerca DNS

nslookup

nslookup

Diagnostica di rete

netsh

netstat

Comandi informativi

Comando della CLI

Windows

Linux

Elenca i processi

tasklist

ps

Termina processo

taskkill

kill

Informazioni di sistema

systeminfo

uname -a

Utilizzo del disco

wmic/fsutil

df

Monitoraggio del sistema

perfmon

top/htop

Quali sono le best practice della CLI?

Sebbene un'interfaccia della linea di comando (CLI) sia utile e possa fornire l'accesso remoto, richiede una certa precisione e la conoscenza dei comandi corretti. Comprendere i comandi che inserisci ti assicurerà di ottenere il risultato desiderato. Se non hai familiarità con un comando, prima di inserirlo nella CLI dovresti cercare di capire a cosa serve esattamente. Allo stesso modo, assicurati di digitarlo senza alterazioni o errori di ortografia.

Un altro accorgimento importante è quello di impedire l'accesso alla CLI a tutti gli utenti che non dispongono dei privilegi necessari. Concedendo i diritti di amministratore solo a parti fidate è possibile limitare le interazioni non necessarie con il sistema. È anche possibile impedire l'accesso non autorizzato a risorse critiche. 

Un'ulteriore pratica di sicurezza da tenere in considerazione è quella di mantenere aggiornato il sistema. Gli aggiornamenti rilasciano correzioni di bug, miglioramenti delle prestazioni e, soprattutto, patch di sicurezza. Per garantire la massima sicurezza del sistema, è fondamentale mantenere la CLI costantemente aggiornata. Infine, è una buona idea registrare tutte le attività della CLI per rilevare le modifiche, individuare i comportamenti sospetti e risolvere i problemi se qualcosa va storto.

Cos'è l'Interfaccia della linea di comando AWS (AWS CLI)?

L'interfaccia della linea di comando AWS (AWS CLI) è uno strumento open source di Amazon Web Services (AWS). È possibile utilizzarlo per interagire con i servizi AWS utilizzando i comandi della shell (interprete di comandi) della linea di comando.

Con una configurazione minima, puoi utilizzare la CLI AWS per implementare funzionalità equivalenti a quelle fornite dalla Console di gestione AWS basata su browser. Ecco cosa si può fare dal prompt dei comandi nel terminale:

  • Utilizzare i comuni programmi di shell Linus come Bash, zsh e tcsh per eseguire comandi in Linux o macOS.
  • Eseguire comandi su Windows tramite il prompt dei comandi di Windows o in PowerShell.
  • Eseguire in remoto comandi su istanze Amazon Elastic Compute Cloud (Amazon EC2) tramite un programma terminale remoto come PuTTY, SSH o con AWS Systems Manager.

Grazie ad AWS CloudShell, una shell (interprete di comandi) basata su browser, puoi eseguire rapidamente script con l'Interfaccia della linea di comando AWS (AWS CLI) e utilizzare altri strumenti per aumentare la tua produttività. Nelle regioni AWS in cui è disponibile CloudShell viene visualizzata l'icona di CloudShell.

Inizia oggi stesso a utilizzare la CLI AWS creando un account.

Fasi successive su AWS

Scopri ulteriori risorse correlate al prodotto
Consulta i servizi di strumenti per sviluppatori 
Registrati per creare un account gratuito

Ottieni accesso istantaneo al Piano gratuito di AWS.

Registrati 
Inizia a lavorare nella console

Inizia subito a creare nella Console di gestione AWS.

Accedi