Ho cercato un po’ in giro per la rete e devo dire che non si trovano delle belle guide che spiegano cos’è e come si usa il terminale. Nessun problema: ci penso io. 🙂
Cos’è
Per prima cosa in Ubuntu potete andare su Applicazioni > Accessori > Terminale; invece in ambiente Kde potete aprire Konsole. In realtà, un terminale è qualunque programma abbiate aperto che vi presenti qualcosa del genere:
utente@computer:~$
Anzi, più precisamente si tratta di un programma (a volte detto emulatore di terminale) che vi permette di avere in una finestra il computer senza interfaccia grafica, ovvero di interagire direttamente con esso attraverso i comandi.
Analizziamo la scrittura che vi appare all’inizio. utente
rappresenta il nome dell’utente che state utilizzando in questo momento, computer
rappresenta il nome unico con cui il computer viene visto in rete. La tilde (~) vi dice che siete nella vostra home directory (cioè /home/utente/
) e il simbolo del dollaro vi dice che siete un utente normale (e non con i privilegi di amministratore).
Perché usarlo?
In realtà, le moderne distribuzioni Linux (soprattutto le più semplici come Ubuntu) forniscono una buona interfaccia grafica che permette di evitare praticamente quasi tutte le manovre da terminale. Infatti si può fare quasi tutto con un interfaccia grafica.
Tuttavia, in rete si trovano spesso (a volte anche qui sul blog) dei comandi da impartire da terminale. Se li si sa interpretare si possono anche sostituire con azioni effettuate dall’interfaccia grafica, ma è molto più comodo copiarli ed eseguirli, inoltre è più rapido.
Come si usa
Per usare il terminale in genere basta inserire un comando, gli eventuali argomenti (ad esempio il file su cui operare) e le eventuali opzioni. La stragrande maggioranza dei comandi corrispondono al nome di un programma che si può avviare anche da interfaccia grafica, ad esempio:
utente@computer:~$ firefox
Premendo Invio si apre Firefox, ma bisogna ricordarsi di non chiudere la finestra del terminale, altrimenti anche il programma avviato si chiuderà.
Usando il terminale bisogna ricordarsi alcune cose:
- Il terminale fa distinzione tra le maiuscole e le minuscole
- Si può completare la scrittura di un comando premendo il tasto Tab dopo averne digitato alcune lettere
- Per alcuni comandi è necessario operare con i privilegi di amministratore, anteponendo
sudo
al comando da eseguire. Se si eseguesudo bash
osudo -s
si trasforma il terminale in un terminale root (ovvero amministratore). Esempio:utente@computer:~$ sudo -s root@computer:~#
Notate il cambiamento della stringa del terminale. Tutti i prossimi comandi che verranno eseguiti saranno con i privilegi di amministratore. Se si usa il comando
exit
si ritorna al terminale (o console o shell) normale.
Questi sono alcuni comandi principali:
ls
, mostra il contenuto della cartella dove si trova, o di una eventuale cartella specificata.
cp
, copia un file in una cartella. Eesempio:
cp file.txt cartella
mv
, come cp
, solo che sposta il file. Si può anche usare per rinominare il file. Esempio:
mv file.txt nuovonome.txt
mkdir
, crea una cartella.
cd
, si sposta in un’altra cartella.
rm
, cancella un file semplice. rm -r
cancella una cartella ed il suo contenuto. Da notare che -r
è un’opzione; i comandi hanno opzioni proprie, che sono diverse da quelle di altri comandi. Da usare con cautela.
locate
, cerca ogni file che contiene una certa stringa nel nome o nel percorso. Può generare un output molto lungo.
cat
, mostra il contenuto di un file di testo.
man
, mostra la guida alle opzioni ed all’uso di un comando, il che è utilissimo. Esempio:
man firefox
Quando si usa il terminale si può anche “passare” il risultato di un comando ad un altro comando. Ciò può essere utile in alcuni casi e si fa con il tratto verticale |
. Qui farò un esempio con i comandi grep
e less
, la stringa del terminale è abbreviata ad $
:
$ cat elenco-numeri-telefono.txt | grep Andrea
Qui immaginiamo di avere un file di testo in cui ogni riga contiene un nome, un cognome ed un numero di telefono. Con il comando cat si mostra il suo contenuto, ma prima che ciò avvenga il comando grep filtra l’output mantenendo solo le righe in cui compare la parola Andrea
.
$ cat elenco-numeri-telefono.txt | less
Questo comando invece mostra per intero l’output del comando cat
ma in una sorta di “finestra” che si può scorrere con le frecce su e giù. Per uscire basta premere q sulla tastiera (questo vale anche per altri comandi che si comportano in modo simile).
Con questo, ho illustrato i concetti base per poter capire ed usare il terminale. Se avete dei dubbi potete sempre lasciarmi un commento. 😉
Ciao Lazza…

Questo intervento era particolarmente indirizzato a me 😉
Lo so ti ho fatto cadere le braccia e le gambe quando hai saputo che non conoscevo un’acca di questo terminale… il prob è che da nuovo utente Linux non potevo di certo sapere tutte queste cose, contando che il DOS non lo ho mai fatto
Cmq trovo molto utile per me sopprattutto la seconda parte 😉 , dove illustri tutti i comandi base che si possono eseguire che io naturalmente non sapevo 😆
Quello precendente lo sapeva anche un ignorante come me 😆 😆 😆 😆 😆
Va be grazie per l’intervento e se avro’ bisogno di utilizzarlo consultero’ questa tua guida
Byy no1globe
Grazie. 😎
Carina come guida! Per i nuovi utenti è utilissima! Cmq il simbolo “|” è come se fosse un comando a se stante (funziona da pipeline) e può essere usato anche in altri modi ( 🙂 ), u know what i mean? 😉
Bella questa. La metto tra le guide preferite.
ottima guida!! 😀
Ti rigrazio. 🙂
Grazie mille 😉
Prego.
complimenti ma come mai il mio terminale dice sempre: nessuna file o directory per ogni cartella in cui cerco di entrare col comando: “cd”?
@ Simlav, devi indicare il percorso corretto della cartella e tenere conto delle maiuscole e minuscole.
Esempio: se io mi trovo in /home e voglio entrare nella mia cartella dell’utente devo dare:
cd andrea
E se poi volessi entrare nel cestino:cd .Trash
Oppure al posto di questi due comandi un unico:cd andrea/.Trash
non funziona, ad esempio la mia cartella è “simlav” (senza maiuscole) e se do il comando “cd simlav” mi ripete:
simlav@simlav-desktop:~$ cd simlav
bash: cd: simlav: Nessun file o directory
Aiuuuuttooo!!! sto diventando pazzo!! però linux resta superiore!
@ Simlav perché ci sei già dentro!!!
OK ma ho anche una cartella sul desktop che ho chiamato ciao e non trova neanche quella! sono proprio io che non ci capisco nulla o c’è una spiegazione??
Direi la prima.
Se sei nella tua home (ovvero /home/simlav/), devi fare:
cd Desktop/ciao
hai ragione!!! …studiero’
grazie della compassione!
Simlav!
@ Simlav, prego figurati. 🙂
Non riesco a capire come mai quando inserisco la password di root sul terminale non compaia nulla e se premo invio mi dà solo errore!!Sono disperato,non riesco proprio ad usare linux!
@ Alessandro Guerra, per operare come root intanto assicurati di inserire la password con le maiuscole e le minuscole corrette, inoltre controlla di avere i privilegi di amministratore. Poi ricorda che devi inserire la tua password, non quella dell’utente root! 😉
Mentre digiti la password, sebbene il computer riceva l’input, sul terminale non viene segnalato nulla, non escono neanche degli asterischi. Questo per ragioni di sicurezza.
Questo probabilmente è perchè digiti un password errata, segui i consigli del Lazza.
Se sei determinato ad usarlo vedrai che ce la farai, è questione di voglia e di tempo.
Infatti. 🙂
Complimenti per la guida.
Mi piace molto il paragrafo “Perché usarlo?”
Io ci aggiungerei anche un altro motivo: quando un programma non si avvia, lanciandolo dal terminale si possono leggere i messaggi di errore, che spesso non compaiono in modalità grafica.
Sì, è un altro buon motivo. 🙂
ciao a tutti
utili le indicazioni sul terminali ma io ho un problema che nn riesco proprio a risolvere nonostante le 1000 ricerche fatte e le non poke soluzioni provate.
Questo il problema:
il terminale di apre normalmente
utente@computer:~$
io digito il comando tipo
sudo poff dsl-provider(per la connessione internet)
e il terminale mi chiede la password
QUI CI SONO 2 PROBLEMI
° non so quale password voglia
°anche se la conoscessi non la potrei digitare perchè il terminale non me lo permette affatto e se provo a premere invio mi dice
sorry..digita password(una cosa del genere)
Be’ la password che ti chiede naturalmente è quella del tuo utente, se vuoi agire come amministratore usando sudo devi metterla. Tu non vedi che stai digitando perché nel terminale non esistono gli asterischi, ma in realtà tutto ciò che digiti viene registrato. Quindi se metti la password giusta e premi invio tutto andrà come deve andare (ovviamente si assume che la configurazione della rete sia fatta bene, ma quella è un’altra storia).
ciao è una settimana che provo ubuntu lo trovo molto interessante però ho un problema ti spiego:
quando provo a usare il terminale non riesco a eseguire nessun comando, dopo che ho dato il comando sudo …….invio poi non riesco a dare la password dove sbaglio? il terminale è
gerardo@gerardo-desktop:~$
@ gerardo, hai per caso letto il commento immediatamente sopra al tuo?
Ciao, ho un problema con il terminale.
Anche nel mio caso alcuni comandi normali non funzionano e viene visualizzato l’avviso nessun file o directory.
ad esempio, dalla cartella /home/utente non riesco ad accedere ad alcuna sottodirectory presente. il comando cd documenti, ad esempio, non funziona.
lo stesso dicasi per comandi come “cd /home/utente/documenti” e così via
ho notato il medesimo problema anche per le altre partizioni
Riesco ad arrivare in /media/sda5 ad esempio, ma quando provo ad accedere alla cartella lì presente nominata “musica”, ecco che ricompare il solito messaggio di errore “nessun file o directory” .
Sai di che si tratta?
Grazie
Sei sicuro di aver messo le maiuscole e le minuscole giuste? 😉
cavolo, era proprio così
non ci posso credere…
Eh succede a tutti le prime volte. 🙂
complimenti
non ho mai visto una guida cosi completa ed esauriente bravo
Prego, figurati.
rm -f da solo non cancella una cartella ed il suo contenuto
forse volevi dire -r (recursive)
-f serve solo per forzare la cancellazione
locate, cerca ogni file che contiene una certa stringa nel nome o nel percorso ma lo cerca in un database (che e’ possibile aggiornare con # updatedb)
find e’ il programma per cercare i file!
man rm
man locate
man find
Fork bomb
@ Fork bomb, sì effettivamente avevo scritto -rf e poi ho cancellato la lettera sbagliata. So bene che find cerca i file direttamente, ma locate è più semplice e per certi versi più veloce; considera che è una guida per principianti…
Evita di inserire comandi “fastidiosi” che è alquanto inopportuno.
ciao Lazza ,complimenti x la guida. Io ho lo stesso problema di Simlav e cioè da terminale ,quando cerco di aprire una cartella con il comando “cd” mi da sempre “nessuna file o directory per ogni cartella” da notare il comando “ls” funge. Ho letto tutto il post e non so più che fare. Il fatto che nelle propietà della cartella che cerco di aprire non è impostato nessun permesso vuol dire qualcosa?
Devi controllare le maiuscole e assicurarti che hai i permessi per accedervi (cioè la cartella appartiene al tuo utente, per farla semplice). Inoltre stai attento a dare il percorso corretto. 😉
Lazza ti posto un esempio di quello che mi dà il terminale, delle cartelle che vedi l’unica che riesco ad aprire è Examples, che è dicolore verde acqua diverso da tutte le altre che non riesco ad aprire. Ovviamente ho
omesso il nome utente dalla stringa di comando.
:~$ ls
CD Bootabili versione N.D.zip Examples Immagini Musica Pubblici Video
Documenti i250 Modelli PDF Scrivania
:~$ cd i250
bash: cd: i250: Nessun file o directory
Postami per cortesia l’output di:
file i250
e
ls -l i250
Quella dopo il meno è una L. 🙂
Ecco come richiesto. Spero di aver capito bene “output”,sono alle prime armi con linux.Comunque la cartella i250 contiene 2 file .rpm, che dovrei modificare in .deb x installare su ubuntu 8.4 una canon i250.
:~$ file i250
i250: ERROR: cannot open `i250′ (No such file or directory)
~$ ls -l i250
ls: impossibile accedere a i250: Nessun file o directory
Mi spiace ma la cartella non si chiama “i250”. Sei sicuro di non aver lasciato uno spazio per sbaglio davanti o dietro al nome della cartella? 😯
Grazie Lazza era proprio così, ho rinominato la cartella e adesso funge.
ciao bella guida per un nuovo arrivato come me nel mondo GNU/linux uso intrepid ho un acer aspire 5920g dove si trova quel comando tipo questo- però ondulato?????
Aspetto risposta e ti ringrazio
Se ho ben capito, tu vuoi digitare la tilde. Si fa con Alt Gr + ì (i con l’accento). E si ottiene ~. 🙂 Comunque non è un comando ma un simbolo. 😉
Grande Lazza…comoda guida.
Sul web danno tutto per scontato senza farti capire bene. grazie.
comunque manca il comando “cd ..” per tornare nella directory superiore 😀
Anche se è passato tempo volevo ringraziarti per la risposta
Complimenti per il blog
Ciao hai volevo farti i complimenti per questa guida che è molto utile per i nuovi utilizzatori del terminale di ubuntu.
Volevo domandare se tramite il terminale è possibile trovare i programmi installati dal sito internet degli stessi, in quanto synaptic e aggiungi/rimuovi non li trovano.
Così per esempio se ho installato skype 2.1.0 e voglio disinstallarlo perchè la versione recente non funzione bene come quella precedente, tramite il terminale potrei dare i comandi per questa azione?.
Esiste un manuale del terminale publicato da qualche casa editrice?
Se non esiste sarebbe il caso di realizzarlo, visto il numero di utenti interessati a ubuntu avrebbe un notevole successo.
Tramite Synaptic vai in Stato > Installato (locale od obsoleto) e a quel punto vedi i pacchetti che hai ma non sono nei repository. 😉 Sicuramente esisteranno manuali sulla consolle, anzi peraltro molti libri su Linux ti fanno usare la consolle, casomai io mi chiedo se ne esistano per utenti principianti.