Basi di Unix: introduzione Kernel il fulcro del sistema. Comunica con l’hardware (processore, memoria, disco fisso) Shell interfaccia tra l’utente e il kernel Applicazioni programmi che estendono le funzioni del sistema operativo Kernel Shell Applicazioni Tre componenti:
Files e processi In Unix si hanno solamente files o processi. Processi Applicazioni attive in memoria. Sono associate ad un PID (process identifier) Files Sono collezioni di dati conservati in una memoria permanente. Esempi di files: documenti o programmi in formato di testo dati o programmi in formato binario directories
Struttura delle directories I file sono raggruppati in directories. Il sistema (file-system) ha una struttura gerarchica. Il primo elemento della gerarchia è chiamato radice
Logica dei comandi Una frase in linguaggio naturale del tipo portami velocemente una penna per favore In Unix dovrebbe essere formulata come: portami -velocemente -perfavore penna comando opzioni parametro Oppure, dal momento che Unix è un linguaggio sintetico: prtm -v -p penna Opzioni + parametri sono chiamati argomenti. Nb. Lo spazio è sempre il separatore tra comando e argomenti e tra i vari argomenti Nb. Per eseguire un comando occorre usare il tasto [invio]
Convenzioni tipografiche Unix fa distinzione tra maiuscole e minuscole: cd e CD non sono equivalenti. In Unix miofile.txt, MioFile.txt e MIOFILE.txt sono tre file diversi, ma se vengono trasferiti in Windows diventano lo stesso file! Windows non distingue tra maiuscole e minuscole. Useremo le seguenti convenzioni: Caratteri scritti in rosso e grassetto devono essere introdotte nel computer così come sono scritte Caratteri scritti in rosso e corsivo rappresentano nomi generici di file o directories
Comandi: lista dei files e directories Dopo il login ci si trova alla directory di partenza chiamata home Per vedere il contenuto della directory (list) % ls Ci sono due directory speciali che non vengono listate: directory corrente... directory precedente Per listare tutti i file e le directories bisogna aggiungere un opzione % ls -a
Comandi: operazioni sulle directories Per creare una sub directory nella directory corrente (make directory) % mkdir nomedirectory Per entrare nella directory (change directory) % cd nomedirectory Si possono usare anche le directories speciali % cd.. (va alla directory precedente) % cd. (rimane dov’è)
Pathnames Il pathname è il nome completo dei files e delle directories nel file-system Per vedere il pathname della directory corrente (print working directory): % pwd Nella vostra directory dovreste avere un risultato del tipo: /home/biocomp Significa che la directory corrente biocomp è figlia della directory chiamata home, che a sua volta è figlia della radice / Le operazioni files e directories possono essere effettuate con i pathnames: % ls /home/biocomp % cd /home/biocomp
Comandi: copiare, muovere, cancellare files copiare file o directory (copy) % cp file1 file2 % cp file1 subdir/file1 % cp file1../file1 muovere file e directory (move) % mv file1 file2 % mv file1 subdir/file2 % mv file1../file2 cancellare file (remove) e directory (remove directory) % rm file % rmdir directory (solo se vuota)
Comandi: leggere i files visualizzare il contenuto di files (concatenate) % cat file % cat file1 file2 visualizzare 1 pagina alla volta (less) % less file visualizzare le prime righe (head) e le ultime (tail) righe % head file % tail file
Sommario comandi su files e directories cp file1 file2 copia il file1 in file2 mv file1 file2 rinomina file1 in file2 rm file cancella un file rmdir directory cancella una directory cat file mostra un file less file mostra un file una pagina per volta head file mostra le prime righe di un file tail file mostra le ultime righe di un file ls lista files e directories ls -a lista tutti i files e directories mkdir crea una directory cd directory va alla directory cd.. va alla directory precedente pwd mostra il percorso della directory corrente