Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.

Slides:



Advertisements
Presentazioni simili
Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
Advertisements

INFORMATICA Algoritmi fondamentali
Sistemi Operativi - Vi 1 Il sistema operativo LINUX Leditor vi Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.
Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
PHP.
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
File System Cos’è un File System File e Directory
Algoritmi e Programmazione
Shell Scripting. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure contenuti.
1 System Call per Comunicazione tra Processi Pipe.
Università La Sapienza Web programming e programmazione multimediale 1 Web Programming e comunicazione multimediale Lezione 10: PHP.
INFORMATICA Strutture iterative
Programmazione Procedurale in Linguaggio C++
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Semantiche dei linguaggi di programmazione
Linguaggio MATLAB: costrutti tipici (IF,WHILE…)
File.
Laboratorio di Linguaggi P R I M O C O M P I T I N O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
1 Corso di Informatica (Programmazione) Lezione 13 (21 novembre 2008) Programmazione in Java: stringhe e array.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Laboratorio 1: Usare Linux. File system Il file system è la componente del sistema operativo che si occupa della gestione di file e cartelle Con laccount.
Il linguaggio Fortran 90: 4. Array: Vettori e Matrici
Andrea Colombari, Carlo Drioli e Barbara Oliboni
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Fondamenti di Informatica I a.a Il linguaggio C Il controllo di flusso La selezione condizionale Listruzione switch I cicli Le istruzioni break,
Istruzioni di selezione in Java Programmazione Corso di laurea in Informatica.
La shell di Linux Linux ha una varietà di shell differenti:
Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME … Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
TCP_Wrapper Le richieste per un determinato servizio (ad. es. telnet, ftp, rsh, etc.) vengono soddisfatte soltanto se lindirizzo IP del richiedente rientra.
1 File System ed Input/Output UNIX Implementazione del File System Caratteristiche del File System Unix/Linux System Call relative al File System Linput/output.
I File.
Espressioni condizionali
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Informazioni utili Per avere una distribuzione linux sul proprio pc: 1.
Dip. Automatica e Informatica
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX AWK Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX/LINUX Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX La shell Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Shell: uso avanzato e script Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX La shell Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Shell: uso avanzato e script Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Vi(m): un editor di testo Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Analisi di Immagini e Dati Biologici
Il problem-solving Gianpiero Cabodi e Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino.
Sistemi Operativi – La shell Salvatore Campagna Politecnico di Torino Dipartimento di Automatica.
CODIFICA Da flow-chart a C++.
AWK Salvatore Campagna
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e stringhe Marco D. Santambrogio – Ver. aggiornata al 9 Agosto 2013.
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Programmazione della shell pt.2
Anno accademico Le istruzioni di controllo in C.
Il linguaggio Fortran 90: 3. Procedure e Funzioni
Script di shell (bash).
Introduzione a Javascript
Elaborazione delle tracce con AWK. Introduzione ad AWK AWK è un linguaggio per la manipolazione di file di testo organizzati in righe e colonne Pertanto.
1 PROGRAMMAZIONE IN SHELL The Unix Programming Environment Kernigham - Pike.
Contare e ordinare files di testo Per contare i caratteri, le righe e le parole in un file di testo wc (word count) % wc human_proteins.fa Conta le parole.
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
Corso di Laboratorio primo modulo Introduzione all'uso di un sistema operativo. Introduzione all'uso della shell (bash). Java – –Introduzione – –Tipi di.
Esercizi.
Script bash I file di comandi in Linux. BASH  Bourne Again Shell  Modalità interattiva o batch (file di comandi)  Ambiente di programmazione “completo”
Ambienti di Programmazione per il Software di Base
PROGRAMMAZIONE BASH – ISTRUZIONE IF
Transcript della presentazione:

Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica

Sistemi Operativi - Introduzione 2 Programma Linux: introduzione e comandi principali Shell: linterprete dei comandi Comandi avanzati e script Il linguaggio di programmazione AWK

Sistemi Operativi - Introduzione 3 Indice Filtri File system: dettagli Script: costrutti di controllo

Sistemi Operativi - Introduzione 4 Indice Filtri File system: dettagli Script: costrutti di controllo

Sistemi Operativi - Introduzione 5 Filtri Comandi che operano sul proprio standard input per filtrarlo secondo alcuni parametri: grep sed cut sort uniq

Sistemi Operativi - Introduzione 6 grep grep cerca nei file di input le righe che fanno match con il pattern fornito. Sintassi: grep [opzioni] pattern [file...] Opzioni utili: -A num stampa altre num righe -H stampa il nome del file per ogni match -i case insensitive -n stampa il numero di riga del match -r, -R ricorsivo sul sottoalbero -v stampa solo le righe che non fanno match

Sistemi Operativi - Introduzione 7 grep - regexp Le espressioni regolari sono pattern che descrivono un insieme di stringhe. Espressioni complesse si costruiscono combinando espressioni semplici. Regexp: [c 1 c 2 ] uno qualsiasi dei caratteri in parentesi [c 1 -c 5 ] uno qualsiasi dei caratteri nel range [^c 1 -c 5 ] uno qualsiasi dei caratteri NON nel range. un carattere qualsiasi ^, $ inizio e fine riga \ inizio e fine parola

Sistemi Operativi - Introduzione 8 grep - regexp Operatori di ripetizione (possono seguire ogni regexp): * lelemento precedente ce` zero o piu` volte + lelemento precedente ce` una o piu` volte {n} lelemento precedente ce` esattamente n volte {n,} lelemento precedente ce` n o piu` volte {n,m} lelemento precedente ce` min n e max m volte Operatori di concatenzaione: | OR tra due regexp () gestiscono le precedenze tra gli operatori Loperatore \ serve per poter usare in modo letterale i caratteri che hanno significati speciali.

Sistemi Operativi - Introduzione 9 grep - esempi Esempi: ps -ef | grep my_loop 100[1-5] grep –H –n -r my_func( *.[ch] cat f1.c | grep –v \/\*[^\*]*\*\/ > f2.c

Sistemi Operativi - Introduzione 10 Indice Filtri File system: dettagli Script: costrutti di controllo

Sistemi Operativi - Introduzione 11 File system Lorganizzazione piu` comune del file system UNIX e`: / bin home sbin usr etc var dev mnt bin sbin lib include log

Sistemi Operativi - Introduzione 12 File system Il kernel virtualizza diverse partizioni (ognuna col suo file system) come se fossero tutte parte dello stesso albero. A ogni file di qualunque tipo e` associato un inode number, lindice di una tabella in cui ogni elemento (inode) contiene le informazioni di un file. Le directory sono delle tabelle che associano al nome di un file il suo inode number. Tale associazione si chiama link. Lo stesso inode number puo` apparire in piu` link!

Sistemi Operativi - Introduzione 13 File system - comandi Per creare dei link si usa il seguente comando: ln [opzioni] source_file [target_file] Opzioni utili: -s crea un link SIMBOLICO (default HARD link) N.B. I link simbolici contengono il path del file puntato e possono essere fatti tra file system differenti (gli hard link no!). Il comando rm rimuove il file solo se il numero dei link e` a 0 Il comando mv equivale ad eseguire prima ln e poi rm.

Sistemi Operativi - Introduzione 14 Indice Filtri File system: dettagli Script: costrutti di controllo

Sistemi Operativi - Introduzione 15 Costrutto if-then-fi Sintassi: if condition then commands [elif condition then commands] [else commands] fi Condizioni: if test param op param oppure if [ param op param ] SERVONO gli SPAZI!!!

Sistemi Operativi - Introduzione 16 Flag di confronto Confronto tra numeri: -eq vero se i due numeri sono uguali -ne vero se i due numeri non sono uguali -gt vero se il primo numero e` maggiore -ge vero se il primo numero e` maggiore o uguale -lt vero se il primo numero e` minore -le vero se il primo numero e` minore o uguale Confronto tra stringhe: = vero se le due stringhe sono uguali != vero se le due stringhe non sono uguali

Sistemi Operativi - Introduzione 17 Flag di confronto Confronto per file: -f vero se largomento e` un file normale -d vero se largomento e` una directory -r vero se largomento ha il permesso di lettura -w vero se largomento ha il permesso di scrittura -x vero se largomento ha il permesso di esecuzione Operatori logici: ! NOT -a AND -o OR

Sistemi Operativi - Introduzione 18 Costrutto if - esempi if test $1 = -r then recursive_search=1 fi if [ $recursive_search –eq 1 –a –d $2 ] then find $2 –name *.c > $3 elif [ $recursive_search –eq 0 –a –d $2 ] then find $2 –maxdepth 0 *.c > $3 else printUsageAndExit fi

Sistemi Operativi - Introduzione 19 Costrutto case-esac Sintassi: case var in str1) commands ;; str2|str3) commands ;;... *) commands ;; esac

Sistemi Operativi - Introduzione 20 Costrutto case - esempi case $1 in 01 | 1) echo Gennaio ;; 02 | 2) echo Febbraio ;;... 12) echo Dicembre ;; *) echo Error: unknown month;; esac

Sistemi Operativi - Introduzione 21 Il costrutto for-in for var in value1 value2 value3... do #commands done Esegue i comandi specificati, una volta per ogni valore assunto dalla variabile var.

Sistemi Operativi - Introduzione 22 Costrutto for-do-done Sintassi: 1: for var in list... do commands done 2: for (( expr1 ; expr2 ; expr3 )) do commands done

Sistemi Operativi - Introduzione 23 Il costrutto for-in - esempi 1: for i in `echo {1..5}` do echo $i >> numeri.txt done 2: for f in `ls | grep *7`; do chmod g+x $f; done equivalente a: find. –maxdepth 1 –name *7 –exec chmod g+x \{} \;

Sistemi Operativi - Introduzione 24 Costrutto for - esempi for (( i=0 ; i<10 ; i++ )) do echo $i done for i in `ls | grep *.c` do chown pippo:disney $i done

Sistemi Operativi - Introduzione 25 Costrutto while-do-done Sintassi: while condition do commands done

Sistemi Operativi - Introduzione 26 Costrutto while - esempi i=0 while [ $i –lt 10 ] do echo $i i=$(($i+1)) done (per scambiare due colonne in un file): while read var1 var2 do echo $var2 $var1; done file_out