60 comandi Linux essenziali

60 comandi Linux essenziali

Gli amministratori di sistema usano comunemente i comandi per gestire i server Linux. I comandi sono più efficienti e permettono agli utenti di automatizzare varie attività più rapidamente.

In questa guida, vedremo 60 comandi Linux essenziali per vari scopi, dalla navigazione alla gestione del software.

Prerequisiti

Prima di procedere, accedi all’interfaccia a riga di comando del tuo desktop Linux o server privato virtuale (VPS). Se utilizzi un sistema remoto, connettiti a esso utilizzando un client SSH come PuTTY o Terminal.

Se non hai una macchina Linux, ti consigliamo di acquistare il piano di VPS hosting di Hostinger. La nostra funzione Browser terminal ti permette di collegarti al server direttamente dal browser web per semplificare il processo.

Inoltre, l’assistente AI Kodee di Hostinger è in grado di scrivere comandi in base alle tue esigenze e aiuta i principianti a imparare gli strumenti Linux in modo più efficiente, poiché non è necessario aprire la documentazione per avere dei riferimenti.

60 comandi Linux essenziali

Diamo un’occhiata ai 60 comandi Linux più comunemente utilizzati e ai loro esempi per l’amministrazione del sistema.

Suggerimento professionale

Se vuoi controllare l’uso, la sintassi e le opzioni di un comando, usa il flag -help. Ad esempio, inserisci ls –hel per visualizzare la guida dello strumento ls.

1. Comando ls

Il comando ls elenca il contenuto di una cartella, inclusi file e directory. Ecco la sintassi:

ls [options] [directory_or_path]

Se ometti il percorso, il comando ls controllerà il contenuto della tua directory corrente. Per elencare gli elementi all’interno delle sottocartelle, aggiungi l’opzione -R. Nel frattempo, usa -a per mostrare i contenuti nascosti.

2. Comando pwd

Per controllare il percorso completo della tua directory di lavoro corrente, usa il comando pwd. La sua sintassi è la seguente:

pwd [options]

Il comando pwd ha solo due opzioni. L’opzione -L stampa i contenuti della variabile di ambiente, come le scorciatoie, invece del percorso effettivo della tua posizione attuale. Nel frattempo, -P fornisce la posizione esatta.

Ad esempio, /shortcut/folder è una scorciatoia per /actual/path, e ti trovi attualmente in /actual/path/dir. Se utilizzi l’opzione -L, il risultato sarà:

/shortcut/folder/dir

Nel frattempo, l’opzione -P stamperà il percorso canonico esatto:

/actual/path/dir

3. Comando cd

Usa cd per navigare tra le directory nel tuo VPS Linux. Non ha nessuna opzione, e la sintassi è semplice:

cd [path_or_directory]

A seconda della tua posizione, potrebbe essere necessario specificare solo la directory principale. Ad esempio, ometti path da path/to/directory se sei già dentro una. Il comando cd ha diversi scorciatoie:

  • cd – ritorna alla home directory dell’utente corrente.
  • cd .. – si sposta su una directory superiore.
  • cd – – torna alla directory precedente.

4. Comando mkdir

Il comando mkdir ti permette di creare una o più directory. La sintassi appare così:

mkdir [options] directory_name1 directory_name2

Per creare una cartella in un’altra posizione, specifica il percorso completo; altrimenti, questo comando creerà il nuovo elemento nella tua directory di lavoro corrente.

Ad esempio, inserisci quanto segue per creare la nuova cartella new_folder in /path/to/target_folder:

mkdir path/to/target_folder/new_folder

Per impostazione predefinita, mkdir consente all’utente corrente di leggere, scrivere ed eseguire file nella nuova cartella. Puoi impostare privilegi personalizzati durante la creazione aggiungendo l’opzione -m. Per saperne di più sulla gestione dei permessi, leggi la sezione chmod qui sotto.

5. Comando rmdir

Esegui rmdir per eliminare le directory vuote nel tuo sistema Linux. La sintassi del comando appare così:

rmdir [options] directory_name

Il comando rmdir non funzionerà se la directory contiene sottocartelle. Per forzare l’eliminazione, aggiungi l’opzione –p. Nota che devi possedere l’elemento che vuoi rimuovere o usare sudo.

6. Comando rm

Il comando rm elimina i file da una directory. Devi avere il permesso di scrittura per la cartella o utilizzare sudo. Ecco la sintassi:

rm [options] file1 file2

Puoi aggiungere l’opzione -r per rimuovere una cartella e i suoi contenuti, incluse le sottocartelle. Usa il flag -i per visualizzare un messaggio di conferma prima della rimozione o -f per disattivarlo completamente.

Attenzione! Evita di usare -r e -f a meno che non sia necessario. Piuttosto, aggiungi l'opzione -i per prevenire la cancellazione accidentale.

7. Comando cp

Usa il comando cp per copiare i file dalla tua cartella attuale a un’altra cartella. La sintassi appare così:

cp file1 file2 [target_path]

Puoi usare cp anche per duplicare il contenuto di un file in un altro utilizzando questa sintassi. Se l’obiettivo si trova in un’altra posizione, specifica il percorso completo in questo modo:

cp source_file /path/to/target_file

Inoltre, cp ti permette di duplicare una directory e i suoi contenuti in un’altra cartella utilizzando l’opzione -R:

cp -R /path/to/folder /target/path/to/folder_copy

8. Comando mv

L’uso principale del comando mv è spostare un file o una cartella in un’altra posizione. Ecco la sintassi:

mv file_or_directory [target_directory]

Ad esempio, sposteremo il file1.txt da un’altra posizione al percorso /new/file/directory utilizzando questo comando:

mv /original/path/file1.txt the/target/path

Puoi anche usare il comando mv per rinominare i file nel tuo sistema Linux. Ecco un esempio:

mv old_name.txt new_name.txt

Se specifichi il percorso completo, puoi contemporaneamente rinominare i file e spostarli in una nuova posizione come in questo esempio:

mv old/location/of/old_name.txt new/path/for/new_name.txt

9. Comando touch

Esegui il comando touch per creare un nuovo file vuoto in una directory specifica. La sintassi è la seguente:

touch [options] [path_and_file_name]

Se ometti il percorso, il comando touch creerà un nuovo file nella tua directory di lavoro corrente. Ecco un esempio:

touch file.txt

10. Comando file

Il comando file controlla un tipo di file, come TXT, PDF o altro. La sintassi è la seguente:

file [file_name]

Se usi questo comando su un link simbolico, mostrerà il file effettivo collegato alla scorciatoia. Puoi aggiungere l’opzione -k per stampare informazioni più dettagliate sull’elemento.

11. Comandi zip e unzip

Il comando zip comprime uno o più file in un archivio ZIP, riducendone le dimensioni. Ecco la sintassi:

zip [options] zip_file_name file1 file2

Per estrarre un file compresso nella tua directory di lavoro corrente, usa il comando unzip in questo modo:

unzip [options] zip_file_name

12. Comando tar

Il comando tar raggruppa più file o directory in un archivio senza compressione. La sintassi è la seguente:

tar [options] tar_file_name file1 file2

Per creare un nuovo file TAR, devi aggiungere l’opzione -c. Quindi, usa il flag -f per specificare il nome dell’archivio.

Se vuoi abilitare la compressione, aggiungi un’opzione specifica in base al tuo metodo preferito. Ad esempio, la sintassi seguente raggrupperà file1.txt e file2.txt con la compressione gzip:

tar -cfz archive.tar.gz file1.txt file2.txt

Ricorda che il formato del file dell’archivio varierà a seconda del metodo di compressione. Indipendentemente dall’estensione, puoi decomprimere un file TAR utilizzando questa sintassi:

tar [options] tar_file_name

13. Comandi nano, vi e jed

I comandi nano, vi e jed ti permettono di modificare i file. Hanno la stessa sintassi, tranne all’inizio, dove devi specificare il nome dello strumento:

nano/vi/jed file_name

Se il file di destinazione non esiste, questi comandi ne creeranno uno nuovo. Dato che il tuo sistema potrebbe non avere questi strumenti di elaborazione del testo pre-installati, configurali utilizzando il tuo gestore di pacchetti.

Spiegheremo il comando nella sezione dei comandi apt e dnf.

14. Comando cat

Il comando concatenate o cat ha vari usi; il più basilare è la stampa del contenuto di un file. Ecco la sintassi:

cat file_name

Per stampare il contenuto in ordine inverso, usa tac. Se aggiungi il simbolo dell’operatore di output standard (>), il comando cat creerà un nuovo file. Ad esempio, la sintassi seguente creerà un file.txt:

cat > file.txt

Puoi anche usare cat con l’operatore per combinare il contenuto di più file in un nuovo elemento. In questo comando, file1.txt e file2.txt si uniranno in target.txt:

cat file1.txt file2.txt > target.txt

15. Comando grep

La stampa di espressioni regolari globali o grep consente di cercare righe specifiche in un file utilizzando parole chiave. È utile per filtrare grandi quantità di dati, come i registri. La sintassi è la seguente:

grep [options] keyword [file]

Puoi anche filtrare i dati da un altro strumento inoltrandoli al comando grep. Ad esempio, la sintassi qui sotto ricerca file.txt dall’output del comando ls:

ls | grep "file.txt"

16. Comando sed

Usa il comando sed per cercare e sostituire rapidamente i pattern nei file. La sintassi di base appare così:

sed [options] 'subcommand/new_pattern/target_pattern' input_file

Puoi sostituire una stringa in più file contemporaneamente elencandoli. Ecco un esempio di un comando sed che cambia rosso in colors.txt e hue.txt con blu:

sed 's/red/blue' colors.txt hue.txt

17. Comando head

Usa il comando head per stampare le prime voci di un file. La sintassi di base è la seguente:

head [options] file_name

Puoi anche stampare le prime righe dell’output di un altro comando inviandolo come segue:

command | head [options]

Come impostazione predefinita, head mostrerà le prime dieci righe. Tuttavia, puoi modificare questa impostazione utilizzando l’opzione -n seguita dal numero che desideri.

Nel frattempo, usa -c per stampare le prime voci in base alle dimensioni in byte invece che in base alla riga.

18. Comando tail

Il comando tail è l’opposto di head, poiché ti permette di stampare le ultime righe dai file o dall’output di un altro strumento. Ecco le sintassi:

tail [options] file_name
command | tail [options]

Lo strumento tail ha anche le stesse opzioni di head. Ad esempio, estraiamo le ultime cinque righe dall’output del comando ping:

ping -c 10 8.8.8.8 | tail -n 5

19. Comando awk

Il comando awk cerca e manipola modelli di espressioni regolari in un file. Ecco la sintassi di base:

awk '/regex pattern/{action}' input_file.txt

Sebbene simile a sed, awk offre più operazioni oltre alla sostituzione, tra cui la stampa, il calcolo matematico e la cancellazione. Ti permette anche di eseguire un compito complesso con un’istruzione if.

Puoi eseguire più azioni elencandole secondo l’ordine di esecuzione, separate da un punto e virgola (;). Ad esempio, questo comando awk calcola la media dei voti degli studenti e stampa i nomi che superano quella soglia:

awk -F':' '{ total += $2; students[$1] = $2 } END { average = total / length(students); print "Average:", average; print "Above average:"; for (student in students) if (students[student] > average) print student }' score.txt

Hai bisogno di aiuto con un comando?

Chiedi a Kodee, l’assistente AI di Hostinger, di scomporre e spiegare i comandi complessi.

20. Comando sort

Usa il comando sort per riordinare il contenuto di un file in un ordine specifico. La sua sintassi è la seguente:

sort [options] [file_name]

Nota che questo strumento non modifica il file effettivo e stampa solo il contenuto riorganizzato come output.

Per impostazione predefinita, il comando sort usa l’ordine alfabetico da A a Z, ma puoi aggiungere l’opzione -r per invertire l’ordine. Puoi anche ordinare i file numericamente utilizzando il flag -n.

21. Comando cut

Il comando cut seleziona sezioni specifiche da un file e le stampa come output del Terminale. La sintassi appare così:

cut options file

A differenza di altri strumenti Linux, le opzioni del comando cut sono obbligatorie per la suddivisione del file. Ecco alcuni dei flag:

  • -f – seleziona un campo di riga specifico.
  • -b – taglia la riga di una dimensione di byte specificata.
  • -c – suddivide la riga utilizzando un carattere specifico.
  • -d – separa le righe in base ai delimitatori.

Puoi anche combinare più opzioni per ottenere un risultato più specifico. Ad esempio, questo comando estrae dal terzo al quinto campo di un elenco separato da virgole:

cut -d',' -f3-5 list.txt

22. Comando diff

Il comando diff confronta due file e stampa le loro differenze. Ecco la sintassi:

diff file_name1 file_name2

Per impostazione predefinita, il comando diff mostra solo le differenze tra i due file. Per stampare tutto il contenuto ed evidenziare le discrepanze, abilita il formato contestuale utilizzando l’opzione -c. Puoi anche ignorare la sensibilità alle maiuscole aggiungendo -i.

Ad esempio, esegui la seguente sintassi per mostrare solo le differenze tra 1.txt e 2.txt:

diff -c 1.txt 2.txt

23. Comando tee

Il comando tee invia i risultati di un altro comando sia al Terminale che a un file. È utile se vuoi utilizzare i dati per ulteriori elaborazioni o backup. Ecco la sintassi:

command | tee [options] file_name

Se il file specificato non esiste, tee lo creerà. Fai attenzione quando usi questo comando, poiché sovrascriverà il contenuto esistente. Per preservare e aggiungere i dati esistenti, aggiungi l’opzione -a.

Ad esempio, salveremo l’output del comando ping come nuove voci nel file test_network.txt:

ping 8.8.8.8 | tee -a test_network.txt

24. Comando locate

Il comando locate cerca un file e ne stampa il percorso. Ecco la sintassi:

locate [options] [keyword]

Se utilizzi l’opzione -r per cercare file utilizzando espressioni regolari, ometti l’argomento [keyword]. Il comando locate è sensibile alle maiuscole e minuscole per impostazione predefinita, ma puoi disattivare questo comportamento utilizzando il flag -i.

Nota che locate cercherà i file dal suo database: sebbene questo comportamento velocizzi il processo di ricerca, devi aspettare che l’elenco si aggiorni prima di trovare gli elementi appena creati.

In alternativa, inserisci la seguente sintassi per ricaricare i dati manualmente:

updatedb

25. Comando find

Il comando find cerca un file all’interno di una specifica directory. Ecco la sintassi:

find [path] [options] expression

Se non specifichi il percorso, il comando find cercherà nella tua directory di lavoro corrente. Per trovare i file usando il loro nome, aggiungi l’opzione -name seguita dalla parola chiave.

Puoi specificare il tipo di elemento che stai cercando utilizzando il flag -type. L’opzione -type f cercherà solo i file, mentre -type d troverà le directory. Ad esempio, controlleremo il file.txt in path/to/folder:

find path/to/folder -type f -name "file"

A differenza di locate, il comando find effettua la ricerca nelle cartelle in tempo reale. Anche se questo rallenta il processo, puoi cercare nuovi elementi immediatamente, senza aspettare che il database del sistema si aggiorni.

26. Comando sudo

superuser do o sudo consente agli utenti non-root che fanno parte del gruppo sudo di eseguire comandi amministrativi. Semplicemente, aggiungilo all’inizio di un altro strumento in questo modo:

sudo [options] your_command

Ad esempio, inserisci quanto segue per aprire un file utilizzando nano come amministratore:

sudo nano file.txt

Il Terminale ti chiederà di inserire la password dell’utente prima di eseguire il comando. Per impostazione predefinita, devi reinserirla dopo cinque minuti di inattività.

Di solito, non si aggiunge nessuna opzione a sudo, ma puoi controllarle inserendo:

sudo --help

Attenzione! Poiché gli utenti con privilegi sudo possono modificare varie impostazioni del tuo sistema, usa questo comando con cautela.

27. Comandi su e whoami

Il comando su ti permette di passare a un altro utente nella sessione del Terminale. La sintassi è la seguente:

su [options] [username]

Se non specifichi nessuna opzione o nome utente, questo comando ti farà passare all’utente root. In questo caso, devi inserire la password prima di modificare l’account.

Puoi controllare l’utente attualmente connesso dalla shell della riga di comando Linux. In alternativa, usa il comando whoami:

whoami

28. Comando chmod

Chmod ti permette di modificare i permessi dei file o delle directory. La sintassi di base si presenta così:

chmod [options] [permission] [file_or_directory]

In Linux esistono tre permessi per cartelle e file: leggi (r), scrivi (w) ed esegui (x). Puoi assegnarli a tre parti: il proprietario, un gruppo o altri account che non appartengono a nessuna delle categorie. Considera questo esempio:

chmod -rwx---r-– file1.txt

Il punto dopo il primo trattino () specifica il permesso per il proprietario di file1.txt. Nell’esempio precedente, abbiamo concesso il privilegio rwx.

Il prossimo posto è per i gruppi. Dato che non concederemo loro alcun privilegio, mettiamo tre trattini per indicare il vuoto. L’ultimo posto è per altri utenti che hanno solo il permesso di lettura o r.

29. Comando chown

Il comando chown ti permette di cambiare la proprietà di file, directory o link simbolici. Ecco la sintassi:

chown [options] newowner:newgroup file1 file2

Se vuoi assegnare un utente come il nuovo proprietario di un elemento, lascia vuoto il nome del gruppo. Ad esempio, faremo in modo che admin-vps sia il proprietario di file1.txt:

chown admin-vps file1.txt

Al contrario, ometti il nome utente per rendere proprietari tutti i membri del gruppo. Ricorda di scrivere i due punti (:) in questo modo:

chown :newgroup file1.txt

30. Comando useradd, passwd e userdel

Usa il comando useradd per creare un nuovo account nel tuo sistema Linux. La sintassi è la seguente:

useradd [options] new_username

Di predefinito, il comando useradd non ti chiede di fornire una password al nuovo utente. Puoi aggiungerla o modificarla manualmente in un secondo momento con il comando passwd:

passwd new_username

Per rimuovere un utente, usa il comando userdel seguito dal nome dell’account come nella sintassi nell’esempio:

userdel new_username

Poiché la gestione di altri utenti richiede privilegi di superutente, esegui questi comandi come root o con il prefisso sudo.

Suggerimento professionale

Per impostare una password e altri dettagli durante il processo di creazione dell’account, utilizza il comando adduser.

31. Comando df

Il comando df controlla l’utilizzo del disco del tuo sistema Linux, mostrando lo spazio utilizzato in percentuale e kilobyte (KB). La sintassi appare così:

df [options] [file system]

Nota che il comando df opera al livello dei file di sistema. Se non ne specifici uno, l’utilità mostrerà tutti i sistemi di file attivi.

32. Comando du

Per controllare la dimensione di una directory e il suo contenuto, usa il comando du. Ecco la sintassi:

du [directory]

Il comando controllerà la tua directory di lavoro, se non specifichi un percorso o una cartella. Per impostazione predefinita, suddivide l’utilizzo del disco per ogni sottocartella, ma è possibile aggiungere l’opzione -s per riassumere l’utilizzo totale in un unico risultato.

Puoi anche usare l’opzione -M per cambiare le informazioni da KB a MB.

33. Comando top

Il comando top mostra tutti i processi in esecuzione nel tuo sistema e il loro consumo di hardware. La sintassi appare così:

top [options]

Il comando top ha varie opzioni. Ad esempio, -p ti permette di controllare un processo specifico specificando il suo ID. Nel frattempo, aggiungi il flag -d per cambiare il ritardo tra gli aggiornamenti dello schermo.

34. Comando htop

Come top, il comando htop ti permette di visualizzare e gestire i processi nel tuo server Linux. Condivide anche la stessa sintassi:

htop [options]

htop ha opzioni simili a top, ma è possibile aggiungerne altre. Ad esempio, -C abilita la modalità monocromatica, mentre -tree mostra i processi in una visuale gerarchica.

35. Comando ps

Il comando ps riassume lo stato di tutti i processi in esecuzione nel tuo sistema Linux in un momento specifico. A differenza di top e htop, non aggiorna automaticamente le informazioni. Ecco la sintassi:

ps [options]

Puoi stampare un rapporto più dettagliato aggiungendo altre opzioni. Ad esempio, usa -A per elencare tutti i processi nel tuo sistema, -r per controllare solo quelli in esecuzione, o -u nomeutente per esaminare quelli associati a un account particolare.

36. Comando uname

Il comando unix name o uname mostra informazioni dettagliate sulla tua macchina Linux, inclusi l’hardware, il nome e il kernel del sistema operativo. La sua sintassi di base è la seguente:

uname [options]

Senza alcuna opzione, il comando stamperà il nome del kernel del tuo sistema. Per controllare tutte le informazioni sulla tua macchina, aggiungi l’opzione -a.

37. Comando hostname

Usa il comando hostname per controllare il tuo hostname VPS e altre informazioni correlate. Ecco la sintassi:

hostname [options]

Se lasci vuota l’opzione, il comando stamperà il tuo nome host. Aggiungi -i per controllare l’indirizzo IP del tuo server, -a per stampare l’alias dell’hostname e -A per visualizzare il nome di dominio completamente qualificato (FQDN) del sistema.

38. Comando time

Il comando time misura il tempo di esecuzione dei comandi o degli script per ottenere informazioni sulle prestazioni del tuo sistema. La sintassi di base si presenta così:

time command_or_script

Puoi misurare una serie di comandi separandoli con doppie “E” commerciali (&&) o punti e virgola (;) in questo modo:

time command; command; command

39. Comando systemctl

Il comando systemctl viene utilizzato per gestire i servizi nel tuo sistema Linux. Ecco la sintassi di base:

systemctl subcommand [service_name][options]

I sottocomandi rappresentano il tuo compito, come elencare, riavviare, terminare o abilitare i servizi. Ad esempio, elencheremo i servizi Linux utilizzando la seguente sintassi:

sudo systemctl list-unit-files --type service --all

Nota che questo comando potrebbe non funzionare con le distribuzioni più vecchie poiché utilizzano un altro gestore di servizi.

40. Comando watch

Il comando watch ti permette di eseguire continuamente uno strumento a un intervallo specifico per monitorare le modifiche nel risultato. Ecco la sintassi di base:

watch [options] command_name

Per impostazione predefinita, watch eseguirà il tuo comando ogni due secondi, ma puoi cambiare l’intervallo utilizzando l’opzione -n seguita dal ritardo. Se vuoi evidenziare le modifiche nel risultato, aggiungi il flag -d.

41. Comando jobs

I job sono compiti o comandi che stanno funzionando nel tuo shell corrente. Per controllarli, usa il comando jobs con la seguente sintassi:

jobs [options] [Job_ID]

Eseguendo questo comando senza alcun argomento, verranno mostrati tutti i lavori in esecuzione in primo piano e in background nel Terminale. Se non hai nessun compito in esecuzione, restituirà un valore vuoto.

Puoi visualizzare informazioni più dettagliate su ogni lavoro aggiungendo l’opzione -l. Nel frattempo, usa -n per mostrare solo le attività il cui stato è cambiato dall’ultima notifica.

42. Comando kill

Usa il comando kill per terminare un processo utilizzando il suo ID. Ecco la sintassi di base:

kill [signal_option] Process_ID

Per ottenere l’ID del processo, esegui il seguente comando:

ps ux

Il comando kill ha 64 segnali di terminazione. Come impostazione predefinita utilizza il metodo SIGTERM, che consente al programma di salvare i suoi progressi prima di chiudere.

43. Comando shutdown

Il comando shutdown ti permette di spegnere o riavviare il tuo sistema Linux in un momento specifico. Ecco la sintassi:

shutdown [option] [time] [message]

Se esegui il comando senza alcun argomento, il tuo sistema si spegnerà immediatamente. Puoi specificare l’orario utilizzando un formato di 24 ore o uno relativo. Ad esempio, inserisci +5 per spegnere il sistema dopo cinque minuti. Per riavviare la macchina, aggiungi l’opzione -r.

L’argomento message specifica la notifica che gli altri utenti nel tuo sistema riceveranno prima dello spegnimento del server.

44. Comando ping

Il comando ping invia pacchetti a un server target e recupera le risposte. È utile per la diagnostica della rete. La sintassi di base appare così:

ping [option] [hostname_or_IP_address]

Come impostazione predefinita, ping invia pacchetti infiniti fino a quando l’utente non lo ferma manualmente premendo Ctrl + C.

Tuttavia, puoi specificare un numero personalizzato utilizzando l’opzione -c. Puoi anche cambiare l’intervallo tra i trasferimenti aggiungendo -i.

Ad esempio, inviamo 15 pacchetti ogni due secondi al server di Google:

ping -c 15 -i 2 google.com

45. Comando wget

Il comando wget ti permette di scaricare file da internet tramite i protocolli HTTP, HTTPS, o FTP. Ecco la sintassi:

wget [options] [URL]

Come impostazione predefinita, il comando wget scaricherà un elemento nella tua directory di lavoro corrente. Ad esempio, esegui questo comando per recuperare l’installazione di WordPress più recente:

wget https://wordpress.org/latest.zip

46. Comando cURL

Usa il comando cURL per trasferire dati da o verso un server specificando il suo URL. La sintassi di base si presenta così:

curl [options] URL

Eseguire cURL senza un’opzione stamperà il contenuto HTML del tuo sito web nel tuo Terminale. Se aggiungi l’opzione -O oppure -o, il comando scaricherà i file dal link specificato.

Il comando cURL è utile anche per testare API o endpoint del server. Puoi farlo aggiungendo l’opzione -X seguita da un metodo HTTP, a seconda che tu voglia recuperare o caricare dati.

Ad esempio, il seguente comando recupererà i dati da uno specifico endpoint API:

curl -X GET https://api.example.com/endpoint

47. Comando scp

Il comando scp ti permette di copiare in modo sicuro file e directory tra sistemi su una rete. La sintassi è la seguente:

scp [option] [source username@IP]:/[directory and file name] [destination username@IP]:/[destination directory]

Se stai copiando elementi da o verso il tuo computer locale, ometti l’IP e il percorso. Quando trasferisci un file o una cartella da una macchina locale, specifica il suo nome dopo le opzioni.

Ad esempio, eseguiamo il seguente comando per copiare file1.txt nella directory path/to/folder del nostro VPS come root:

scp file1.txt root@185.185.185.185:path/to/folder

Puoi cambiare la porta SCP predefinita specificando il suo numero dopo l’opzione -P. Nel frattempo, usa il flag -l per limitare la larghezza di banda del trasferimento e aggiungi –C per abilitare la compressione.

48. Comando rsync

Il comando rsync sincronizza i file o le cartelle tra due destinazioni per assicurarsi che abbiano lo stesso contenuto. La sintassi è la seguente:

rsync [options] source destination

La sorgente e la destinazione possono essere una cartella all’interno dello stesso sistema, un computer locale o un server remoto. Se stai sincronizzando contenuti con un VPS, specifica il nome utente e l’indirizzo IP in questo modo:

rsync /path/to/local/folder/ vps-user@185.185.185.185:/path/to/remote/folder/

Puoi aggiungere l’opzione -a per sincronizzare anche gli attributi del file o della cartella, inclusi i loro link simbolici. Nel frattempo, usa il flag -z per abilitare la compressione durante il trasferimento.

49. Comando ip

Lo strumento ip ti consente di elencare e gestire i parametri di rete del tuo sistema in modo simile al comando ifconfig nelle vecchie distribuzioni di Linux. Ecco la sintassi:

ip [options] object command

Eseguendo questo comando senza alcun argomento, verrà stampato il manuale, con tanto di una spiegazione sulle opzioni e gli oggetti accettabili.

Per gestire un parametro di rete, specifica l’azione nell’argomento del comando. Ad esempio, esegui questo per mostrare l’indirizzo IP del tuo sistema:

ip address show

Suggerimento professionale

Puoi anche usare Kodee per visualizzare i dettagli di rete sul tuo VPS. Basta digitare un prompt come “Puoi mostrare i dettagli di rete del mio server?”, e risponderà di conseguenza.

50. Comando netstat

Il comando netstat mostra informazioni sulla configurazione della rete del tuo sistema. La sintassi è semplice:

netstat [options]

Aggiungi un’opzione per cercare specifiche informazioni sulla rete. Ecco diversi flag da utilizzare:

  • -a – mostra i socket in ascolto e chiusi.
  • -t – mostra le connessioni TCP.
  • -u – elenca le connessioni UDP.
  • -r – mostra le tabelle di routing.
  • -i – mostra informazioni sulle interfacce di rete.
  • -c – emette continuamente informazioni sulla rete per il monitoraggio in tempo reale.

51. Comando traceroute

Il comando traceroute traccia il percorso di un pacchetto quando viaggia tra gli host, fornendo informazioni come il tempo di trasferimento e i router coinvolti. Ecco la sintassi:

traceroute [options] destination

Puoi utilizzare un nome host, un nome di dominio o un indirizzo IP come destinazione. Se non specifichi un’opzione, traceroute eseguirà il test utilizzando le impostazioni predefinite.

Cambia il numero massimo di salti del pacchetto utilizzando l’opzione -m. Per impedire a traceroute di risolvere gli indirizzi IP, aggiungi -n.

Puoi anche abilitare un timeout in secondi utilizzando il flag -w seguito dalla durata.

52. Comando nslookup

Il comando nslookup richiede a un server Domain Name System (DNS) di verificare un dominio collegato a un indirizzo IP o viceversa. Ecco la sintassi:

nslookup [options] domain-or-ip [dns-server]

Se non specifichi un server DNS, nslookup utilizzerà il resolver predefinito del tuo fornitore di servizi internet. Puoi aggiungere altre opzioni per modificare come questo comando interroga un indirizzo IP o un dominio.

Ad esempio, usa l’opzione -type= per specificare le informazioni che vuoi controllare, come i record DNS.

Puoi anche impostare il tentativo automatico con il flag -retry= e aggiungere -port= per utilizzare una porta specifica.

Poiché alcune distribuzioni Linux potrebbero non avere pre-installato questo strumento, potresti riscontrare l’errore “comando non trovato“. Puoi configurarlo scaricando bind-utils o dnsutils tramite il tuo gestore di pacchetti.

53. Comando dig

Il comando domain information groper o dig mostra le informazioni su un dominio. È simile a nslookup, ma più completo. La sintassi è la seguente:

dig [options] [server] [type] name-or-ip

L’esecuzione di dig senza argomenti verificherà i record A del dominio specificato utilizzando il resolver predefinito del sistema operativo. Puoi interrogare un record specifico specificandolo nell’argomento [type] come nell’esempio seguente:

dig MX domain.it

Per eseguire una ricerca DNS inversa, aggiungi l’opzione –x e usa un indirizzo IP come target.

54. Comando history

Esegui il comando history per controllare gli strumenti eseguiti in precedenza. Ecco la sua sintassi:

history [options]

Aggiungi l’opzione -r se vuoi cancellare la cronologia del Terminale. Per eseguire nuovamente uno specifico strumento dalla lista, inserisci un punto esclamativo seguito dal suo ID.

Ad esempio, usa la seguente sintassi per eseguire il 145esimo comando:

!145

55. Comando man

Il comando man o manual mostra una guida completa di un altro strumento. La sintassi appare così:

man [options] [section_number] command_name

Se specifichi solo il nome del comando, man mostrerà l’intero manuale. In alternativa, puoi selezionare una delle nove sezioni utilizzando i loro ID per stampare informazioni più specifiche.

Ad esempio, esegui quanto segue per controllare la sezione delle chiamate di libreria del manuale del comando ls:

man 3 ls

56. Comando echo

Usa echo per stampare il testo nel tuo comando come risultato del Terminale. Ecco la sintassi:

echo [options] [text]

Puoi anche aggiungere il simbolo di reindirizzamento (>) per stampare il testo in un file anziché nel Terminale. Se usi due simboli (>>), aggiungerà al contenuto esistente. La sintassi del comando appare così:

echo [options] [text] > [file_name]

Se il tuo testo contiene una variabile di shell o ambiente come $var, echo mostrerà il valore effettivo. Questo comando è comunemente usato per i test e per il bash scripting.

57. Comando ln

Il comando ln collega file o directory con una scorciatoia. La sintassi è la seguente:

ln [options] source target

Questo comando creerà automaticamente la scorciatoia, il che significa che non devi crearne una manualmente. Ad esempio, la sintassi seguente ti permetterà di aprire file.txt utilizzando shortcut.txt:

ln target.txt shortcut.txt

Come impostazione predefinita, ln crea un hard link, il che significa che le modifiche nella sorgente saranno riflesse nell’elemento collegato e viceversa. Per impostare un soft o symbolic link, aggiungi l’opzione -s.

58. Comando alias e unalias

Il comando alias ti permette di impostare un altro nome per una stringa che appartiene a un file, testo, programma o nome di comando. Ecco la sintassi:

alias name='string'

Ad esempio, la sintassi seguente assegnerà k come alias per il comando kill, permettendoti di usare la lettera invece del nome completo.

alias k='kill'

Per controllare l’alias di un comando, esegui alias seguito da un nome alternativo. Ad esempio, controlleremo il frammento precedente:

alias k

Puoi rimuovere un alias eseguendo questa sintassi:

unalias [name]

59. Comando cal

Il comando cal mostra un calendario nella tua interfaccia a riga di comando Linux. Ecco la sintassi:

cal [options] [month] [year]

Se non aggiungi nessun argomento, il comando mostrerà la data corrente. In alternativa, puoi inserire un mese e un anno specifici in formato numerico.

Puoi anche aggiungere l’opzione -3 per mostrare il mese corrente, precedente e successivo.

60. Comando apt e dnf

Il comando apt ti permette di gestire le librerie Advanced Package Tool (APT) nei sistemi operativi basati su Debian come Ubuntu e Kali Linux. La sintassi appare così:

apt [options] subcommand

I sottocomandi definiscono l’azione, come aggiornare la libreria, aggiornare il software, installare un’applicazione o rimuovere un pacchetto. Ad esempio, installeremo l’editor di testo Vim:

apt install vim

In Linux, i comandi per la gestione dei pacchetti variano tra le diverse distribuzioni. Ad esempio, le distribuzioni basate su Red Hat Enterprise Linux come CentOS e AlmaLinux utilizzano dnf, che ha la stessa sintassi e opzioni di apt.

Eseguire sia apt che dnf richiede privilegi di superutente, che puoi ottenere solo con sudo o tramite root.

Conclusioni

I comandi Linux permettono agli amministratori di sistema di gestire i loro server in modo più efficiente. Forniscono capacità come scripting, variabili e automazione di cui le interfacce grafiche utente hanno bisogno per migliorare.

In questo tutorial, abbiamo spiegato i 60 comandi Linux più comunemente utilizzati: questi saranno inestimabili per vari compiti, inclusi la gestione dei file, l’amministrazione degli utenti, la navigazione e la configurazione della rete.

Approfitta dell’assistente AI Kodee per utilizzare questi comandi in modo più efficiente. Ti permette di utilizzare semplici prompt per scrivere vari strumenti e script in base al tuo compito per risparmiare tempo e fatica.

FAQ sui comandi essenziali di Linux

Quali sono i comandi base di Linux?

I comandi di base in Linux includono strumenti di navigazione come cd e su. Anche i comandi di manipolazione dei file come cat, echo, nano e grep sono comunemente utilizzati nell’amministrazione del sistema.

Dove posso trovare tutti i comandi Linux?

Per elencare tutti i comandi Linux, esegui compgen -c, help o man -e nella tua schermata del Terminale. Esegui lo strumento con il flag –help per controllare il manuale e le opzioni di un comando.

Come imparare rapidamente i comandi Linux?

Usa uno schema per i comandi Linux e usa spesso il Terminale. Anche leggere i tutorial VPS e praticare i diversi passaggi può aiutarti a familiarizzare con i vari strumenti più rapidamente.

Qual è il comando più comunemente usato in Linux?

Strumenti di navigazione come cd e su sono comandi comunemente utilizzati, poiché gli amministratori di sistema lavorano spesso in diverse directory o utilizzano un altro account. Anche gli strumenti di gestione dei file come cat, mv o nano sono essenziali per le attività di amministrazione del server.

Author
L'autore

Michela Z.

Michela si focalizza sul condividere le sue conoscenze di hosting e marketing digitale e sull'aiutare le aziende ad avere successo online, con un particolare interesse per la creazione di siti web e di e-commerce. Nel suo tempo libero le piace sedersi davanti un buon libro e ascoltare musica.