Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

La shell:

questa sconosciuta...

PARTE II

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

I file di testo

Sono molto importanti in Linux

Microsoft li snobba (che importanza ha Notepad?)

Tutto ciò ha un costo: quanto spazio inutile sprechiamo per usare formati inutilmente complicati?

Tutti i file di configurazione di Linux sono file di testo

Imparate a usare un buon editor di testo

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Il comando cat

Argomenti: uno o più file (non necessariamente di testo)

Cosa fa? Li stampa sullo schermo (ma non solo...)

Cat sta per “concatena”: serve per concatenare più file

Può essere usato per visualizzare sullo schermo il
contenuto di un file di testo (ma non si ferma alla fine
della schermata)

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

less e more

Servono a mostrare un file di testo una schermata per
volta e a spostarsi in su e in giu

Il comando echo

Scrive quello che volete

guest@curzio ~/prova$ echo W IL PLUG

W IL PLUG

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Ridirezione dell'output

Normalmente i risultati dei comandi vengono visualizzati sullo schermo (standard output)

Si può però ridirigere l'output su un file

> (visto come una freccia) indica dove vogliamo scrivere

Dopo la freccia viene il nome di un file

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Ridirezione dell'output (continua...)

Esempio

guest@curzio ~/prova$ echo Il Signore degli Anelli > yurichechi.txt

guest@curzio ~/prova$ cat yurichechi.txt

Il Signore degli Anelli

guest@curzio ~/prova$ cat yurichechi.txt > yuri2.txt

guest@curzio ~/prova$ cat yuri2.txt

Il Signore degli Anelli

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Ridirezione dell'input

Anche l'input può essere preso invece che dalla tastiera da un file

Esempio: il comando sort ordina alfabeticamente un
file
sort < elenco.txt
sort < elenco.txt > elenco_ordinato.txt

Oltre a input e output esiste anche il file dove
vengono stampati gli errori, ridiretto con 2>

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Ridirigere in fondo a un file

Quando si ridirige l'output su un file, se il file già esisteva,
viene sovrascritto perdendo quello che c'era prima

Si può usare >> per ridirigere l'output in fondo al file
in aggiunta

Naturalmente vale anche 2>> (ridirige l'errore in
aggiunta)

&> ridirige contemporaneamente output ed errore

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

La pipeline

La pipeline è un modo per far funzionare insieme comandi diversi

L'output del primo comando viene mandato come input al secondo comando

<primo comando> | <secondo comando>

Possono essere concatenate
ls | tac | less

W IL PLUG

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Espansione dei nomi

Prima di eseguire i comandi la bash espande i
nomi secondo alcune regole

Molto comunemente si usa l'asterisco, che si espande con 0 o più caratteri per comporre il nome del file

Esempio:
ls *.txt
lista tutti i file con estensione .txt

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Installare i programmi: da sorgenti, da pacchetti RPM, da pacchetti Debian

Sorgenti: oltre che a installare si compila il programma.

Vantaggi: ottimizzato per la propria macchina

Svantaggi: un po' più difficile e lento

Pacchetti: Sono distribuiti i programmi già compilati
Vantaggi: semplicità, compatibilità, velocità

Svantaggi: minore ottimizzazione, non di tutto esiste il pacchetto

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Installare un programma dai sorgenti

Su Linux i programmi possono essere distribuiti sotto forma di sorgente (Open Source)

Per installare un programma bisogna compilarlo e poi installare gli eseguibili nel posto giusto

Tutto questo viene fatto automaticamente con una procedura standard

Compilare vuol dire passare dal linguaggio ad alto livello
(C, C++...) all'eseguibile

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Archivi compressi

Il sorgente viene dato sotto forma di archivio compresso, tipicamente con estensione tar.gz o
tgz

tar è un comando per creare ed estrarre archivi, gzip per comprimerli, gunzip per “scompattarli”

Tipicamente si usa
tar zxvf pacchetto.tgz
z=unzip x=extract v=verbose f=file

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Installare da sorgenti (cont.)

Una volta scompattato il pacchetto di solito crea una directory con lo stesso nome senza
l'estensione

Entrare nella directory con cd <directory>

./configure (controlla che abbiate tutto ciò che serve)

make (compila)

su (diventate root)

make install (installate)

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Installazione di un pacchetto RPM

Usato da Red Hat, Mandrake ma anche SUSE

Ci sono ottime interfacce grafiche ma è bene saperlo fare da linea di comando

Per installare (da root)
rpm -i pacchetto.rpm
rpm -Uvh pacchetto.rpm

U vuol dire upgrade v serve per dare più informazioni, h per far vedere il progresso

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

RPM (continua...)

Ricercare cosa è installato
guest@curzio ~$ rpm -q emacs

emacs-20.7-34

Disinstallare

guest@curzio ~$ rpm -e emacs

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Pacchetti DEB

I pacchetti debian risolvono automaticamente le
dipendenze: se un programma ha bisogno di un altro per
funzionare vengono installati entrambi

Il file /etc/apt/sources.list contiene la lista dei siti da dove scaricare i programmi (ma si può installare anche da
cd)

apt-get install programma per installare

apt-cache search parola per cercare tra i pacchetti disponibili

apt-get uninstall programma per disinstallare

Incontri di Avvicinamento a GNU/Linux

Lorenzo Masetti

Pagina 17

Pacchetti DEB (continua)

apt-get update per aggiornare la lista dei pacchetti disponibili

apt-get dist-upgrade per aggiornare tutta la distribuzione all'ultima versione.

dselect è un'interfaccia testuale che permette di scegliere facilmente il programma da
installare...

Lorenzo Masetti

2004-04-18T11:54:55