giovedì 14 agosto 2008

Tutorial base sull'uso del terminale

Come già detto in un precedente post, il terminale è una possibilità in più che ci da Linux al fine di poterlo configurare e/o utilizzare al meglio. Per questo motivo ho ritenuto utile approfondire il suo utilizzo, per ora solo a livello base.
Per questo motivo posterò una guida tratta dal Blog di Andrea Lazzarotto, davvero chiara e ben fatta.:

Andrea Lazzarotto:

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à, qualunque programma abbiate aperto, che vi presenti qualcosa del genere:

utente@computer:~$

è un terminale. 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 esegue sudo bash o sudo -s si trasforma il terminale in un terminale root (ovvero amministratore).
    Esempio:
    utente@computer:~$ sudo bash
    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 (esempio: 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 -f cancella una cartella ed il suo contenuto (Da notare che -f è 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 (esempio: man firefox). Utilissimo.

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.

Grazie mille Andrea!

Per chi volesse approfondire di più l'argomento ecco una guida in PDF: Guida ai comandi Linux

Nessun commento: