Avvio
Avviare
il
computer facendo partire Linux (SL - Scientific Linux 7.9).
Collegatevi
usando
come account
didXXY
con XX=01...16
a seconda del
numero del PC che state usando
Y=m
per il gruppo 1 (martedi')
Y=v   per
il gruppo 2 (giovedi')
la password verra' comunicata a voce
dal
docente.
Il Desktop
Linux ha delle interfaccie grafiche che emulano il
desktop di Windows.
Queste sono molteplici (kde, gnome...) e variano anche
tra le varie
distribuzioni di Linux e tra le diverse versioni. Non
bisogna quindi
abituarsi a basarsi troppo sulle icone ed i menu forniti
dall'interfaccia.
D'altra parte l'interfaccia e' configurabile e puo'
essere vantaggioso
avere alcune icone sul Desktop o sulla barra dei comandi
per le
applicazioni di uso piu' frequente.
Il primo passo dell'esercitazione consistera' nel creare
sulla barra
dei comandi l'icona corrispondente all'avvio di una
finestra dalla
quale si possano dare istruzioni (terminal, shell o
console) e, qualora
non fosse gia' presente, un'icona dalla quale far
partire un browser
web.
La gerarchia delle directory di
Unix
Una
directery
principale, chiamata
root e indicata con
/, contiene tutti le
directory del
calcolatore,
le quali a loro volta contengono altre directory... fino
al livello piu`
interno che contiene i file
(dati
o programmi).
Invece di
mostrare le
directory
(come le cartelle Windows o Mac), in Unix vengono
mostrate le relazioni
tra directory, mediante un albero rovesciato.
In cima abbiamo
le
radici (root)
mentre i rami sono le sottodirectory.
bin, usr, home,
dev, etc, sbin.... sono delle sottodirectory
di root
didnnm, didnnv
etc... sono sottodirectory
di home
(nn e' il numero del vostro PC).
Ogni gruppo ha un account
(did01m
... did16m , did01v ... did16v) cui corrisponde una home
directory sotto home.
Indirizzo di un file nel file-system Unix
Un file
puo`
essere identificato
tramite il suo pathname
completo (ad esempio il file
cp della
directory /bin:
/bin/cp
), anche se esistono
delle
scorciatoie.
In particolare gli eseguibili (comandi)
vengono cercati di default in una lista delle directory che
include /bin e
quindi generalmente
non e` necessario indicare tutto il path (cammino)
e /bin/cp
equivale
a cp.
Inoltre la directory in cui ci si trova in quel momento (present working directory, ottenibile mediante il comando pwd) non ha bisogno di essere specificato, quindi per copiare un file A in un file B entrambi nella directory corrente e` sufficiente scrivere
cp A B
per copiare invece il file A dalla directory dell'utente didnnm nella directory corrente, home directory dell'utente didnnv, si puo` procedere mediante indirizzi assoluti
cp
/home/didnnm/A
/home/didnnv/B
cp
/home/didnnm/A
B
oppure usando gli indirizzi relativi
cp ../didnnm/A B
(
../
e` la directory al di
sopra
di quella attuale, ./ e'
la directory
corrente)
Navigazione nel file-system
pwd
present working directory, nessun argomento, ritorna l'indirizzo della directory corrente
cd
change
directory, seguito da
un argomento con la directory di destinazione, che puo`
essere un
indirizzo
assoluto o relativo
esempio,
partendo dalla
directory
/home/did01m
cd .. ci porta in /home
cd /home ci porta in /home
cd Desktop ci porta nella sottodirectory Desktop
cd /home/didnnY/Desktop ci porta nella sottodirectory Desktop(Y=A oppure Y=B)
cd
~/Desktop
stessa
cosa! (~ indica la propria home directory)
ls
list, fornisce la lista dei files della directory corrente o della directory di cui si fornisce l'indirizzo.
Questo comando ha delle opzioni utili, di cui per il momento ne indichiamo una sola: -F
(NB in Unix un comando seguito dal carattere - e poi da un'altro carattere indica un'opzione, per avere tutte le opzioni di un comando digitare man nome_del_comando, da una pagina del manuale si esce premendo q).
ls -F mostra i diversi tipi di files presenti nella directory in modo diverso:
i
sottodirectory seguite dal
simbolo back-slash /
gli eseguibili
seguiti
dal simbolo
*
i file di dati o
di
testo senza
alcun simbolo particolare
Manipolazione di files
cp
A
B
copy: richiede
due
argomenti,
l'indirizzo del file da copiare e quello del file su cui
copiare
mv
A
B
move: sposta il
primo
file nel
secondo
rm
A
remove: cancella
il
file A
more A
mostra il
contenuto del
file
A pagina per pagina
less
A
molto simile al
precedente
cat
A
mostra il
contenuto del
file
A tutto insieme
mkdir
D
crea la
directory
all'indirizzo
D
rmdir
D
cancella la
directory
all'indirizzo
D (solo se vuoto)
Creazione di files
esistono molti modi per creare files in Unix ma ci concentreremo sull'uso di uno dei piu` diffusi e potenti editor di testo: emacs.
Per fare partire una sessione di emacs basta digitare emacs, ma per poter mantenere l'uso della finestra di comandi ed evitare di avere problemi nel salvataggio del file si consiglia di digitare emacs nomefile &.
Il simbolo
&
alla
fine di un comando lancia l'esecuzione del comando in
background. Un
ulteriore consiglio e' quello di lanciare sempre emacs
indicando quale
sia il file da editare, anche quando questo sia ancora
da creare: emacs
miofile.txt &, in questo modo si evita di trovarsi
in un ambiente
non ben definito (scratch) dal quale puo' essere
difficoltoso salvare
correttamente.
Questo editor puo` fare tantissime cose ma per oggi ci limitiamo ad usarlo per creare un file di testo, a vostro piacimento, e salvarlo mediante la sequenza di comandi
Ctrl-x Ctrl-s (Ctrl- tasto control tenuto premuto insieme al tasto indicato subito dopo)
emacs vi chiedera` di fornire il nome del file su cui salvare il contenuto del suo buffer.
Si esce
con
Ctrl-x Ctrl-c.
Applicate i comandi elencati qui sopra per eseguire le seguenti operazioni
a. controllare in che directory vi trovate
b. se non siete nella vostra home directory (/home/did01m o simili) portatevici
c. crearvi una sottodirectory ex1
d. verificare mediante il comando ls -F di averlo creato
e. spostarvi all'interno della directory ex1
f. verificare col comando ls che questo e` vuoto
g. creare al suo interno un nuovo file con emacs chiamandolo ex1.txt
h. leggerlo con il comando cat
i. leggerlo con il comando more: per avanzare di una pagina (files lunghi) premere la barra, per uscire premere q
j. leggerlo con il comando less
k. rinominarlo esercitazione1.txt
l. se
vi
rimane tempo continuate
ad esercitarvi con emacs,
esploratene i menu e provate i comandi abbreviati
sotto elencati
Ctrl-v spostamento in avanti di una pagina
Ctrl-p spostamento all'indietro di una riga
Ctrl-n spostamento in avanti di una riga
Ctrl-f spostamento in avanti di un carattere
Ctrl-b spostamento all'indietro di un carattere
Alt-f spostamento in avanti di una parola
Alt-b spostamento indietro di una parola
Ctrl-s ricerca in avanti
Ctrl-r ricerca all'indietro
Ctrl-x Ctrl-f nuova apertura di file
Ctrl-x Ctrl-s salva
Ctrl-x Ctrl-c esci
<canc> cancella il carattere precedente
Ctrl-k cancella la riga corrente dal cursore in poi
Ctrl-y incolla (l'ultima cosa cancellata)
Ctrl-x
u
undo (dell'ultima operazione)
Creazione di un file con i vostri nomi
Nella
vostra home directory, create un file
Nomi_2023_24_xxY.txt dove xx e' il numero del
vostro gruppo e Y e' un numero (1 , 2) a seconda che
frequentiate il laboratorio di martedi' (Gruppo 1)
o giovedi' (Gruppo 2).
Il file
dovra' contenere:
-
il nome del corso
- l'anno accademico
- il giorno in cui frequentate il laboratorio
(martedi' o giovedi) e il numero corrispondente
(gruppo 1 o 2)
- il numero del vostro gruppo (xx)
- il nome ed il cognome dei due studenti che
compongono il gruppo