Sistemi Operativi. Esercitazione 5. Corso di Laurea Triennale in Ingegneria Informatica.

Documenti analoghi
Sistemi operativi. Corso di Laurea Triennale in Ingegneria Informatica. Lezione 4 Cenni a Xserver Patch, diff Tar, gzip, bzip Find, grep

Sistemi Operativi. Esercitazione 5. Corso di Laurea Triennale in Ingegneria Informatica.

Sistemi operativi. Corso di Laurea Triennale in Ingegneria Informatica. Lezione 4 Cenni a Xserver Patch, diff Tar, gzip, bzip Find, grep

Archiviazione, ricerca dei file e pianificazione dei processi

sintassi: percorsi, espressioni (condizioni e operatori) esecuzione di un comando sul risultato della ricerca (azione -exec)

LABORATORIO DI SISTEMI OPERATIVI

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Daniel Cesarini

LABORATORIO DI SISTEMI OPERATIVI

Ulteriori comandi sui file

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Daniel Cesarini

Lab. di Sistemi Operativi - Esercitazione n 2 - a.a. 2012/2013

Lab. di Sistemi Operativi - Esercitazione n 2- - comando di ricerca: grep -

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013

LABORATORIO DI SISTEMI OPERATIVI

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

Il sistema operativo LINUX Esercitazione 3

Shell. Una shell di comandi ci consente, dunque, di eseguire tutte le operazioni di cui abbiamo bisogno!

- comando sort: con chiavi di ordinamento -

Lab. di Sistemi Operativi - Esercitazione n 1 - a.a. 2016/2017. Comandi Shell

Gestione avanzata dei file

Espressioni Regolari. Giancarlo Massidda

L ambiente UNIX/Linux. Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Esercitazione 2. Editor Utenti Permessi

Lezione 3: Programmazione della Shell di Unix

Lezione 2: Comandi avanzati della Shell di Unix

Lab. di Sistemi Operativi - Esercitazione n 3 - a.a. 2016/2017. Script shell

Linux e la shell Bash

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Esercitazione 2. Editor Utenti Permessi

Basi di Linux per GRASS. Cartografia numerica e GIS

Sistemi Operativi 1. Mattia Monga. a.a. 2012/13. Dip. di Informatica Università degli Studi di Milano, Italia

Organizzazione di Sistemi Operativi e Reti

Per visualizzare il valore di tutte le variabili d ambiente si usa il comando env

L ambiente UNIX/Linux. I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

Il sistema operativo LINUX Esercitazione 3. Esercizio 1. Esercizio 2. Esercizio 5 - Soluzione. Il sistema operativo LINUX Esercitazione 4.

Lesson #4. Espressioni Regolari. Roberto De Virgilio

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Daniel Cesarini

SHELL: File e Filesystem

Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS

Ambienti di Programmazione per il Software di Base

- Controllo di flusso: for -

L utility Unix awk [Aho-Weinberger-Kernighan]

Esercitazione GNU/Linux n. 2

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Daniel Cesarini Daniel Cesarini

Esercitazione 1 la shell

Introduzione a Unix/Bash. Insieme minimo di strumenti per interagire con la shell Bash, compilare ed eseguire

Sistemi Operativi 1. Mattia Monga. a.a. 2011/12. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Il filesystem di Unix/Linux (I)

Il sistema operativo LINUX Tools e comandi avanzati

Laboratorio 1: Usare Linux

Linguistica Computazionale: esercitazioni

Introduzione alle espressioni regolari

Esercitazione 2 GUIDA

Il DOS diagramma di flusso. I comandi del DOS. I comandi: vista funzionale. Parametri. Opzioni. I comandi: sintassi

Laboratorio di Sistemi Informativi

Utilizzo di putty. L uso base e molto semplice: richiede solo di specificare:

Introduzione alla programmazione nella shell di Unix 10 Maggio 2005

Corso di avvicinamento al Software Libero

BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX

Page 1. Programmazione. Shell e programmazione. File comandi (script) Introduzione alla programmazione nella shell di Unix

Elaborato Shell. Elementi di architettura e sistemi operativi 2016/2017

L utility Unix awk [Aho-Weinberger-Kernighan]

Corso di Laboratorio di Sistemi Operativi

Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU

Modulo 2 - Appendice 2 Breve rassegna di comandi (esterni) in ambiente Linux

Manipolazione di testo

Lezione 1: Introduzione alla Shell di Unix

Linguistica Computazionale

Linguistica Computazionale

Lavoriamo ora in windows

SQL: le funzioni di aggregazione

NOTE SULL USO DI ECLIPSE per la compilazione di programmi c

Sistema operativo Linux Ubuntu

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Daniel Cesarini.

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

Sophos Enterprise Console

MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ

Laboratorio. Sistemi Operativi: Linux/Windows. Giovanni Da San Martino

Lezione 2: Comandi avanzati della Shell di Unix

Esempio di domande sul file system

Laboratorio. Sistemi Operativi: Linux/Windows. Giovanni Da San Martino

Laboratorio di Sistemi Operativi

Sistemi Operativi 8 Laboratorio linea 2

Esempio 1. Creare uno script (file comandi) che abbia la sintassi:

Usare Python in Linux

Lab. di Sistemi Operativi

Lezione 15 File system: uso

LABORATORIO DI SISTEMI OPERATIVI

IDE DevC

Lezione XII.IV Gestione dei file Uso della shell I permessi di accesso

ORGANIZZAZIONE del FILE SYSTEM SISTEMA OPERATIVO UNIX FILE SYSTEM. FILE astrazione unificante del sistema operativo

File System e Interprete Comandi

COMANDI PRINCIPALI DI LINUX

Codice Corso: UNX010. Durata: 3 giorni

Cos'è Linux. Un sistema operativo : un insieme di programmi necessari per il funzionamento del computer e per il funzionamento di altri programmi.

Controllo di flusso negli script: if-then-else

Prima Esercitazione. Linux shell e linguaggio C

Editor, Utenti e Permessi Insegnamento di Sistemi Operativi di Rete Master Universitario in Tecnologie Internet

L ambiente UNIX/Linux. Comandi UNIX & Linux (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

Transcript:

Sistemi Operativi Corso di Laurea Triennale in Ingegneria Informatica Esercitazione 5 daniel.cesarini@for.unipi.it SVN tar find 1

Domande sulle lezioni passate?

Sommario SVN Introduzione all'uso Archiviazione e compressione Archiviazione tar Compressione gzip, bzip2 Ricerca di file find, locate (cenni) Ricerca nei file comando grep Cron, Tar, Find,... 3

SVN

SVN - Introduzione SVN (SubVersioN) è uno strumento di source control o revision control. Tener traccia di modifiche a codice sorgente. Permette agli utenti di essere sincronizzati sui cambiamenti al codice. Cron, Tar, Find,... 5

Repository 1/2 SVN salva tutti i dati tenuti sotto controllo in un apposito repository. Per usare SVN: creare il repository mkdir svnroot svnadmin create svnroot/nome_progetto Il contenuto della cartella non va modificato manualmente. Cron, Tar, Find,... 6

Repository 2/2 Dare i permessi di scrittura sulla cartella agli utenti che debbono usare quel repository. Esempio: creare un apposito gruppo, svnusers assegnare il repository a quel gruppo, renderlo scrivibile dal gruppo e aggiungere gli utenti al gruppo svnusers Cron, Tar, Find,... 7

Eseguire il checkout svn co [protocol://][user@][server][/repo] checkout di un intero repository SVN. Localmente crea una cartella che contiene una copia dei file scaricati dal repository. Cron, Tar, Find,... 8

Comandi svn 1 svn diff differenze tra il file modificato e l'ultima versione scaricata svn ci commit delle modifiche eseguite localmente svn up esegue l' update dei file dal repository verso la copia locale svn help aiuto!!! Si possono invocare sia sull'intera cartella che su singoli file o sottocartelle Cron, Tar, Find,... 9

Comandi svn 2 svn add nomefile aggiunge un file svn mkdir dirname crea una nuova cartella svn delete name elimina il file o directory svn move sorg dest sposta sorg in dest Attenzione: ciò che è sotto il controllo di SVN va alterato solo con i comandi appositi Cron, Tar, Find,... 10

Esercizi SVN Creare in $HOME/svn/repo un repository con svnadmin Fare il checkout da $HOME/svn/repo in $HOME/localsvn del repository (svn co file:///percorso Provare a caricare nel repository qualche file sorgente (eventualmente quelli creati per make, o gli script del precedente punto). Eseguire delle modifiche ai file ed eseguire il commit sul repo. Cron, Tar, Find,... 11

Archiviazione e compressione

Archiviazione - tar tar = Tape ARchive Un file tar è una raccolta di file e/o directory tar [azione][switch] [archivio] [file] tar compresso (.tgz o.tar.gz) è diventato standard per il passaggio di dati tra sistemi Unix. Cron, Tar, Find,... 13

tar - Opzioni azione c : crea x : estrae t : visualizza il contenuto di un archivio switch v : verbose z : comprime con gzip j : comprime con bzip2 f : file come ultima opzione n : comportamento non ricorsivo Cron, Tar, Find,... 14

tar - Creazione tar cvf archivio.tar sorgente tar -czvf archivio.tar.gz ~/archivio/* archivio.tar : file da creare sorgente : contenuto dell'archivio Cron, Tar, Find,... 15

tar - Visualizzazione tar -tvf filename.tar Elenca il contenuto di filename.tar Cron, Tar, Find,... 16

tar - Estrazione tar xvf archivio.tar destinazione tar -xzvf archivio.tar.gz Non rimuove l'archivio, ma crea copie del suo contenuto Cron, Tar, Find,... 17

gzip and gunzip Programma di compressione gzip archivio archivio.gz gzip Utility di compressione gunzip Utility di decomprime Cron, Tar, Find,... 18

bzip2 and bunzip2 bzip2 Utility di compressione bunzip2 Utility di decompressione bzip2 archivio archivio.bz2 Rapporto di compressione migliore di gzip Cron, Tar, Find,... 19

Archivi - path I file vengono memorizzati col path Non vengono fatti controlli di overwrite -C nome_directory: estrae i dati nella directory specificata Se non si specifica la destinazione si usa la directory corrente ed il path nell archivio Cron, Tar, Find,... 20

Ricerca di file

find Ricerca all interno di percorsi i file secondo le condizioni indicate Le condizioni sono legate all apparenza esterna e non al contenuto Cron, Tar, Find,... 22

find find [percorso ] [espressione] percorso insieme di percorsi separati da spazi espressione: insieme di test e azioni separati da operatori Cron, Tar, Find,... 23

Espressioni [opzione ] [condizioni] Opzione Altera il comportamento del programma Condizioni Espressioni con risultati logici Per concatenare più condizioni si usano gli operatori booleani default è l AND logico (-and) Cron, Tar, Find,... 24

Condizioni -name schema TRUE se il nome del file corrisponde si possono utilizzare i caratteri * e? -size [+ -]n[b c] TRUE se la dimensione del file è uguale (maggiore + o minore -) a n unità di spazio -type t TRUE se il file è del tipo specificato (d,f,l) Cron, Tar, Find,... 25

Condizioni -user utente TRUE se la risorsa appartiene a utente -group gruppo TRUE se appartiene al gruppo gruppo -perm [-/+]modello TRUE se i permessi corrispondono esattamente al modello specificato (in forma ottale o simbolica) Cron, Tar, Find,... 26

Operatori booleani di find (espressione) Precedenza nell esecuzione dei test!espressione nega un espressione espressione [-and] espressione AND logico tra espressioni (può essere omesso) espressione -or espressione OR logico tra espressioni Usare i caratteri di escape per proteggere dall espansione della shell Cron, Tar, Find,... 27

Azioni di find Operazioni da compiere per ogni risultato della scansione. -print stampa i nomi dei file trovati -exec comando [{}] [; +] esegue comando sui risultati della ricerca esegue una istanza del comando per ogni file trovato (la riga terminata da ;) con {} i file trovati vengono passati a comando come lista (la riga terminata da +) Cron, Tar, Find,... 28

Esempi find find. name prova\* -print Cerca i nomi che iniziano con prova find / -name lib* -print Ricerca in / i nomi iniziano per lib \ protegge i metacaratteri Cron, Tar, Find,... 29

Esempi find find /home name pro*! type d Ricerca a partire da /home i nomi che iniziano con pro escluse le directory Virgolette usate per evitare che la shell trasformi pro* in qualcosa di diverso Cron, Tar, Find,... 30

Ricerca con locate locate nomefile Esegue una ricerca del file nomefile all'interno di un database Il database va popolato e tenuto aggiornato: updatedb Cron, Tar, Find,... 31

Ricerca nei file

grep Cerca le righe contenenti stringa grep [opzioni] "stringa" nome_file... grep pippo pluto Visualizza le parti del file pluto in cui compare la parola pippo. grep pippo * Cerca la parola pippo in tutti i file della directory corrente. Il comando grep e' case sensitive. Cron, Tar, Find,... 33

grep È possibile utilizzare espressioni regolari per le ricerche (generalized regular expression printer) grep 'ri.*o' pluto Cerca le stringhe che iniziano per ri e terminano con o all'interno del file pluto..* indica 0(zero) o più caratteri qualunque Cron, Tar, Find,... 34

Opzioni -i (ignore case) ignora le distinzioni tra minuscole e maiuscole -v mostra le linee che NON contengono l espressione -n mette il numero di riga davanti ad ogni riga che riporta -c riporta solo il conteggio delle linee -w verifica solo parole intere -x controlla le corrispondenze di linee intere Cron, Tar, Find,... 35

Metacaratteri (1 di 2) metacaratteri jolly wild-cards ^ Inizio riga grep '^d' ls.out $ Fine riga grep '\.c$' ls.out Anche il metacarattere '\' perché anche il carattere '.' è un metacarattere '\' neutralizza il valore di metacarattere del carattere che lo segue Per citare letteralmente il carattere '\' è necessario quindi scriverlo due volte: '\\' Cron, Tar, Find,... 36

Metacaratteri (2 di 2). uno ed un solo carattere qualunque * zero o più occorrenze dell espressione che lo precede Esempi: Ricercare una riga costituita dalla sola stringa "riga completa": '^riga completa$' Individuare tutte le righe vuote del file: '^$' Cron, Tar, Find,... 37

Insiemi di caratteri [s] '[' e ']' sono metacaratteri 's' elenco di caratteri ammessi. L'insieme '[s]' soddisfa UN SOLO qualunque carattere compreso nell'elenco s. Negli insiemi '[s]' si possono specificare intervalli di caratteri usando il carattere '-' Cron, Tar, Find,... 38

Esempio grep '1[23]:[0-5][0-9]' ls.out il primo carattere della stringa cercata deve essere letteralmente un '1' il secondo può essere un '2' o un '3' il terzo deve essere letteralmente un ':' il quarto può essere '0' o '1' o '2' o '3' o '4' o '5' il quinto deve essere una cifra compresa tra '0' e '9' (estremi compresi). Cron, Tar, Find,... 39

Esercizi

Esercizi Archiviazione e compressione creare nella home un archivio compresso in formato gzip di nome config.tgz contenente i file con estensione conf presenti nella cartella /etc mostrare i file contenuti nell archivio decomprimere l archivio con gunzip estrarre i file contenuti con il comando tar Ricerca dei file cercare dentro la cartella /etc tutti i file il cui nome contiene la stringa sys e la cui dimensione è superiore a 10 byte cercare nella root tutti i file che hanno il bit SUID o SGID attivo concatenare e mostrare a video tutti i file (a partire dalla root) il cui nome contiene la stringa tab Ricerca nei file cercare dentro la cartella /etc tutti i file che contengono la stringa fstab Cron, Tar, Find,... 41

Riferimenti SVN Controllo di Versione con Subversion: http:// svnbook.red-bean.com/ (disponibile online e pubblicato da O'Really) Cron, Tar, Find,... 42