Manipolazione di testi: espressioni regolari

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Manipolazione di testi: espressioni regolari"

Transcript

1 Manipolazione di testi: espressioni regolari Un meccanismo per specificare un pattern, che, di fatto, è la rappresentazione sintetica di un insieme (eventualmente infinito) di stringhe: il pattern viene detto espressione regolare (regexp) Una stringa soddisfa il pattern (ovvero è selezionata dal processo di pattern matching ) se è inclusa nell insieme rappresentato dal pattern Le espressioni regolari hanno somiglianze con i meccanismi di file expansion ma NON SONO LA STESSA COSA e adottano CONVENZIONI DIVERSE anche sulle SCELTE BASILARI (p.e. il simbolo corrispondente al carattere jolly) Quindi si usano in CONTESTI DIVERSI, in particolare UN ESPRESSIONE REGOLARE IN UNA LINEA DI COMANDO VA QUOTATA, A SCANSO DI EQUIVOCI

2 Primi passi Ovviamente le regexp sono case sensitive I due primi simboli fondamentali sono. e * Il carattere. indica qualunque singolo carattere, quindi: A.C matcha con: AAC, ABC, AbC, A C, A+C, A.C,... Il carattere * indica un numero da 0 a qualunque ripetizioni del carattere che precede, quindi: A* matcha con: stringa nulla, A, AA, AAA, AAAA,... AA* matcha con: A, AA, AAA, AAAA,... BA* matcha con: B, BA, BAA, BAAA, BAAAA,... A.*O matcha con: AO, AIUTO, ADESSO CI SONO, AFFANNO, AFFAN...O,... N.B. Gli esempi sopra sono semplificati, come si vedrà meglio in seguito il matching non si effettua solo all inizio della stringa

3 Anchors I caratteri ^ e $ sono anchors che specificano la posizione all interno della stringa ^ se è il primo carattere del pattern, indica l inizio della stringa: ^From indica tutte le stringhe che iniziano con From $ se è l ultimo carattere del pattern, indica la fine della stringa: : Ciao$ indica tutte le stringhe che finiscono con Ciao ^.$ indica tutte le stringhe composte da un solo carattere \.$ indica tutte le stringhe che finiscono col carattere.

4 Insiemi di caratteri [ ] specificano un insieme di caratteri, il matching è soddisfatto da qualunque carattere nell insieme, il trattino indica un range: [abc] un carattere tra a b c [aeiou] qualunque vocale minuscola [0-9] qualunque carattere numerico [A-Z] qualunque lettera maiuscola [a-za-z]qualunque carattere alfabetico Si può indicare il complemento di un insieme specificando come primo carattere ^ [^0-9] qualunque carattere non numerico [^zz] qualunque carattere che non sia una zeta Esempio: ^T[a-z][aeiou] qualunque stringa che inizia con T, seguito da un carattere minuscolo seguito da una vocale

5 Ripetizioni Combinando insiemi e ripetizioni si possono ottenere definizioni articolate: [0-9]* qualunque sequenza di cifre (anche vuota) [0-9][0-9]* qualunque sequenza di cifre non vuota [^a-za-z]* qualunque sequenza (anche vuota) di caratteri non alfabetici Si può specificare l intervallo nel quale deve cadere il numero di ripetizioni desiderate con \{numeromin, numeromax \}: ^A\{3,5\} una stringa che inizia con 3, 4 o 5 A Si può omettere il limite superiore o specificare un singolo valore: [A-Z]\{3,\} qualunque sequenza di almeno 3 maiuscole [0-9]\{4\} una sequenza di esattamente 4 cifre

6 Parole isolate In generale il matching si effettua sul contenuto della stringa in modo indiscriminato: il pattern oro matcha con oro, foro, tesoro, oroscopo, corollario... Non è banale caratterizzare una parola isolata (spaziatori, segni d interpunzione, fine linea, caratteri speciali...) Con \< \> si specifica che il matching deve avvenire su una parola isolata (preceduta e seguita da un fine linea, o da un carattere che non sia alfanumerico nè underscore) \<[Tt]he\> qualunque apparizione dell articolo the (o The)

7 La vispa Teresa Cercare tutte le righe dove compare Teresa Cercare tutte le righe dove compare una h Tutte le righe che iniziano con a Tutte le righe che iniziano con a isolata Tutte le righe dove c'e' una parola che finisce con "esa " Varianti sulla presenza di ale : in qualunque posizione, a fine riga, come parola isolata Varianti sulla presenza di ndo : in qualunque posizione, a fine riga, come fine parola

8 Memorizzare sezioni di pattern Se all interno di un pattern se ne racchiude una parte tra \( \) si memorizza quella parte per poterla richiamare successivamente Si possono memorizzare fino a 9 parti, che sarano richiamabili ciascuna riferendosi al numero d ordine di memorizzazione: \1 per la prima parte memorizzata,\2 per la seconda... Es. cercare sequenze di due caratteri minuscoli uguali: \([a-z])\1 Per la pagina della Sfinge, cosa specifica la seguente regexp? \([a-z]\)\([a-z]\)[a-z]\2\1 Una parola palindroma minuscola di 5 lettere

9 Estensione del pattern matching Va ricordato che il pattern matching viene effettuato sulla massima estensione possibile all interno della stringa esaminata In alcuni casi questo può dare luogo a risultati non immediatamente intuitivi. Per la pagina della Sfinge: se applico \(".*"\) alla stringa Disse: "Sì",poi corresse "No" cosa contiene \1? "Sì",poi corresse "No" Se invece applico \("[^"]*"\) alla stessa stringa cosa contiene \1? Perchè? "Sì"

10 Regexp con sintassi estesa (extended regexp) Le regexp come sopra descritte sono utilizzate da molti programmi: grep, vi, more, less, sed,.. Alcuni programmi (egrep, awk,...) utilizzano alcune comode estensioni della sintassi:? indica 0 o una istanza di ciò che precede + indica una o piu' istanze di ciò che precede (pat1 pat2) indica l or tra due pattern Giusto per compensare, le extended regexp non hanno la sintassi \< \> per le parole isolate

11 Esempi vari per divertirsi Month Day, Year (JAN 05, 2003) o (January 05, 2004) [A-Z][A-Za-z]\{2,8\} [0-9] \{1,2\}, [0-9] \{4\} Codice fiscale (BBBPPP77R13G157K) [A-Z] \{6\} [0-9] \{2\} [A-Z] \{1\} [0-9] \{2\} [A-Z] \{1\} [0-9] \{3\} [A-Z] \{1\} Cifra in dollari ($1) o ($ ) in formato con extended regexp \$ *[0-9]+(\.[0-9][0-9])? Una linea vuota ^$ Un intera linea ^.*$ Uno o più spazi *

12 Line editors Gli editor di linea sono programmi che operano (tipicamente) su flussi di testo (file o pipe) in modalità non interattiva eseguendo operazioni su ciascuna linea del flusso individualmente Per quanto inusuale, l uso di questo tipo di strumenti può essere utile in molti casi nell ambito di programmi script Questo tipo di programmazione non brilla per leggibilità nè per facilità di sviluppo: si consiglia di procedere per piccoli passi, verificando con cura i progressivi arricchimenti di funzionalità che vengono introdotti Considereremo l editor di linea denominato sed,oltre ai più semplici tr e cut Per chi volesse andare oltre: awk

13 sed: schema di funzionamento sed riceve un flusso in ingresso, applica dei comandi riga per riga, e produce in uscita il flusso risultante: quindi sed non modifica i dati in ingresso ma produce un nuovo flusso separato sed per default opera su ciascuna riga del flusso in ingresso, riportandola pari pari in uscita, se alla riga non si applica nessuno dei comandi specificati sed -n inverte la modalità di default: solo le righe alle quali si applica un comando vengono prodotte in output sed -f nomefilecomandi : i comandi da eseguire vengono letti da nomefilecomandi anzichè essere specificati sulla linea di comando stessa (vedi lucido successivo)

14 sed: sintassi di invocazione sed 'comandosed' nomefileinput viene specificato un singolo comando sed da applicare al file di input, se il nomefileinput non è presente si applica allo standard input. Di norma un comando è protetto da quoting forte. sed 'comando1' -e 'comando2'... nomefileinput i due (o più...) comandi sed da applicare al file di input vengono eseguiti su ciascuna riga dell input (tutti i comandi sulla prima riga dell input, poi tutti sulla seconda) sed 'comando1 comando2...' nomefileinput come sopra con comandi scritti su più righe all interno di un unica sequenza protetta da quoting

15 Come è fatto un comando sed address action L idea base è che un comando indica un azione da applicare a tutte e sole le righe del flusso di input che soddisfano l address Se l address non è specificato, l azione viene applicata a tutte le righe del flusso di input Nella scrittura del comando le definizioni di address e action sono in realtà contigue (non sono separate da spazio o altri separatori) address1,address2 action Come sopra, con azione da applicare al range di tutte e sole le righe che si trovano tra la prima riga che soddisfa address1 e la prima riga successiva che soddisfa address2 In entrambi i casi, un! tra address (o range) e action indica la negazione: l azione viene applicata alle righe complementari

16 Line addressing I più comuni tipi di address di linea sono per numero e per pattern Indicazione del numero di linea ($ indica l ultima): 1 la prima linea del flusso 3,5 la terza, quarta e quinta linea Specifica di un pattern /regexp/ tutte le linee che soddisfano il matching con regexp /begin/,/end/ tutte le linee incluse tra una riga che contiene begin e una riga che contiene end /begin/,/end/! tutte le linee NON incluse tra una riga che contiene begin e una riga che contiene end Sono possibili range con specifica mista : p.e. (/begin/,$ oppure 1,/Subject/ oppure

17 Comandi sed: delete La sintassi dei comandi sed è sintetica (un singolo carattere per comando) Il comando più semplice è d: sopprime dall output le righe alle quali viene applicato Giocherellare con d può servire a capire meglio il meccanismo generale sed 1d sopprime la prima riga sed '1!d' sopprime tutte le righe tranne la prima sed '/^#/d' sopprime tutte le righe che iniziano con #

18 Comandi sed: sostituzione di pattern Il comando di sostituzione è probabilmente il più frequente s/search/replacement/ sostituisce in ogni riga (che soddisfa address se specificato) LA PRIMA ISTANZA di search con replacement s/search/replacement/g sostituisce in ogni riga (che soddisfa address se specificato) OGNI ISTANZA di search con replacement Il ritorno della vispa Teresa: - sostituire Teresa con un altro nome - sostituire il suffisso etta con accia

19 Il ritorno della Sfinge s/search/replacement/ search e replacement sono regexp, quindi replacement può contenere: - riferimenti a eventuali parti memorizzate in search (es. \1, \2) - un riferimento all intero pattern che corrisponde a search (indicato dal carattere &) Torna la Sfinge: cosa fa il seguente comando? sed 's/#.*/\ &/' Mette un newline prima di ogni inizio commento in uno script

20 La vendetta della Sfinge Come modificare il comando precedente in modo che non si metta un newline prima delle righe che già iniziano con #? Banalmente: sed 's/\(^[^#][^#]*\)\(#.*\)/\1\ \2/' Dopo il necessario digestivo, a voi la scelta quando si tratta di problemi che richiedano semplici elaborazioni su dati testuali: - sorbirsi pazientemente le osticità di sed, sfruttandone però la potenza - scriversi (banalmente) l equivalente programma in C, in Java o nel linguaggio preferito - non contenti di sed, avventurarsi verso altri linguaggi di simile impostazione ma più complessi e potenti quali awk o perl

21 Altri comandi sed (non tutti) append: aggiunge una nuova riga con un certo testo dopo ciascuna riga che soddisfa l address a\ testodaaggiungere insert: aggiunge una nuova riga con un certo testo prima di ciascuna riga che soddisfa l address i\ testodaaggiungere sostituzione su address: se address singolo, sostituisce ciascuna delle righe che soddisfano l address con un certo testo; se address espresso come range, sostituisce l intero range con il testo specificato c\ testosostitutivo

22 Sostituzioni di caratteri: tr Il comando tr effettua sostituzioni o eliminazioni di caratteri su un flusso in input inviandone il risultato sullo standard output Uso per sostituzioni: tr setchar1 setchar2 ogni carattere di setchar1 viene sostituito dal carattere corrispondente per posizione all interno di setchar2 I due set devono avere la stessa cardinalità, si estende set2 col suo ultimo char se troppo corto o lo si tronca se troppo lungo Esempi: tr "a-z" "A-Z" converte le minuscole in maiuscole tr "A-Z" "a-z" converte le maiuscole in minuscole tr "123" "ABC" sostituisce 1 con A, 2 con B... tr 0-9" "#" sostituisce qualunque numero con #

23 tr -d setchar1 Altri usi di tr Elimina tutti i caratteri inclusi nel setchar1 Esempio: tr -d ",.;:!?" per eliminare la punteggiatura tr -s setchar1 Elimina tutte le ripetizioni dei caratteri inclusi nel setchar1 sostituendole con una loro istanza singola Esempio: tr -s " " per eliminare gli spazi ripetuti

24 Comando cut Il comando cut serve a selezionare una parte di ogni riga di un flusso di testo e a inviarla sullo standard output Le righe si considerano suddivise in fields separati da tab o da altro separatore specificato con l opzione -d L opzione -f serve a specificare quali fields (uno o un range) devono essere riprodotti sullo standard output Esempi: who cut -d" " -f1 visualizza solo i nomi degli utenti attualmente collegati ps tr -s " " cut -d" " -f2 visualizza solo la colonna dei PID correnti ps tr -s " " cut -d" " -f4-5 sed 1d visualizza solo le colonne TIME e CMD senza l intestazione

25 No comment Scrivere uno script di shell che serve ad eliminare le righe vuote e i commenti da un altro script di shell inviando in output solo le parti utili : - si definisce riga vuota una riga che contiene solo spazi o nessun carattere (facoltativamente e SUCCESSIVAMENTE considerare anche il caso in cui si considerino anche caratteri tab) - le righe interamente commentate vanno eliminate - delle righe commentate parzialmente si deve mantenere la parte che precede il primo carattere # a meno che non sia costituita interamente da caratteri spazio (e facoltativamente tab) Provare il programma su un file di test appositamente predisposto

26 No comment 2:... Provare ad impostare/sviluppare uno script per l eliminazione di righe vuote e commenti anche per programmi C o Java La parte di commenti fino a fine riga è analoga alla precedente solo che iniziano con // Non è complicatissimo estendere quanto visto in precedenza per il caso dei commenti su più linee /*... */ Chi va piano, va sano e va lontano: procedere con un comando sed per volta isolando e separando una volta isolate le righe con /* e */ si può fare sed '/\/\*/,/\*\//d'

Ridirezione su/da file

Ridirezione su/da file Combinare i comandi Ogni processo è associato a tre flussi di I/O standard: lo standard input dal quale riceve gli ingressi (normalmente la tastiera) lo standard output sul quale produce le uscite regolari

Dettagli

Stream EDitor (sed) sed NON modifica l'input 2. L'output viene inviato allo standard output e puo' essere rediretto

Stream EDitor (sed) sed NON modifica l'input 2. L'output viene inviato allo standard output e puo' essere rediretto Sed & Awk Stream EDitor (sed) sed: editor di linea che non richiede l'interazione con l'utente sed può filtrare l'input che riceve da un file o una pipe La sintassi di sed NON definisce un output: L'output

Dettagli

sed: editor non interattivo di file di testo (1974 nei Bell Labs come evoluzione di grep, Lee E. McMahon)

sed: editor non interattivo di file di testo (1974 nei Bell Labs come evoluzione di grep, Lee E. McMahon) Sed & Awk Sed e Awk sed: editor non interattivo di file di testo (1974 nei Bell Labs come evoluzione di grep, Lee E. McMahon) awk: linguaggio per l'elaborazione di modelli orientato ai campi (1977, Bell

Dettagli

Editor vi. Editor vi

Editor vi. Editor vi Editor vi vi 1 Editor vi Il vi è l editor di testo standard per UNIX, è presente in tutte le versioni base e funziona con qualsiasi terminale a caratteri Permette di visualizzare una schermata alla volta

Dettagli

Le espressioni regolari.

Le espressioni regolari. Lezione 8 Le espressioni regolari. Le espressioni regolari. Corrispondenze e classi di caratteri. Le regular expressions (espressioni regolari) servono per descrivere dei modelli di stringa. E possibile

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

NOZIONI BASE SHELL E SCRIPT LINUX

NOZIONI BASE SHELL E SCRIPT LINUX NOZIONI BASE SHELL E SCRIPT LINUX Aggiornato al 11 gennaio 2006 Ermes ZANNONI (ermes@zannoni.to.it) (http://www.zannoni.to.it) Indice : 1. Introduzione 2. La Shell 2.1 Comandida Shell 2.1.1 File e directory

Dettagli

L utility Unix awk [Aho-Weinberger-Kernighan]

L utility Unix awk [Aho-Weinberger-Kernighan] L utility Unix awk [Aho-Weinberger-Kernighan] L utility awk serve per processare file di testo secondo un programma specificato dall utente. L utility awk legge riga per riga i file ed esegue una o più

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

- W. Kernighan) AWK (Aho. Introduzione. Programmi awk. Un linguaggio di programmazione per manipolare file di dati

- W. Kernighan) AWK (Aho. Introduzione. Programmi awk. Un linguaggio di programmazione per manipolare file di dati AWK (Aho - W. Kernighan) Un linguaggio di programmazione per manipolare file di dati Introduzione Di base awk serve per trovare unità di testo che rispondono a pattern specifici all interno di file. Trovata

Dettagli

Foglio di calcolo. Foglio di calcolo: nomi celle

Foglio di calcolo. Foglio di calcolo: nomi celle Foglio di calcolo L'astrazione offerta da un programma di gestione di fogli di calcolo è quella di una matrice (un foglio a quadretti). Colonne: A, B, C,... Righe: 1, 2, 3,... Ogni cella ha un nome composto

Dettagli

Lezione 4 Introduzione a Microsoft Excel Parte Prima

Lezione 4 Introduzione a Microsoft Excel Parte Prima Lezione 4 Introduzione a Microsoft Excel Parte Prima Cenni preliminari... 1 Elementi sullo schermo... 2 Creazione di una cartella di lavoro... 3 Utilizzo di celle e intervalli... 3 Gestione della cartella

Dettagli

Manuale Utente QueryGenerator

Manuale Utente QueryGenerator SOFTWARE DI GESTIONE DEL CORPUS API Manuale Utente QueryGenerator Cirass Sommario Introduzione 1 1. Presentazione 1 2. Requisiti di Sistema 2 3. Installazione 2 4. Utilizzo 3 5. Logica d interrogazione

Dettagli

Introduzione al Python

Introduzione al Python Andrea Passerini passerini@disi.unitn.it Informatica Caratteristiche procedurale si specifica la procedura da eseguire sui dati strutturato concetto di visibililtà delle variabili orientato agli oggetti

Dettagli

cambiare utente mediante il comando su verificare chi siete e su che dir state lavorando Chi siete e che dir? (Inserisci la risposta)

cambiare utente mediante il comando su verificare chi siete e su che dir state lavorando Chi siete e che dir? (Inserisci la risposta) Collegamento al server LINUX Segui le seguenti istruzioni per accedere al server LINUX. Da WINDOWS Lancia telnet dalla riga di comando telnet 10.15.1.5, 10.15.1.12, 10.15.1.18, 10.15.1.23 aula boole telnet

Dettagli

Esercitazione. Fig. B.1 L ambiente di lavoro Exel

Esercitazione. Fig. B.1 L ambiente di lavoro Exel Esercitazione Exel: il foglio di lavoro B.1 Introduzione Exel è un applicazione che serve per la gestione dei fogli di calcolo. Questo programma fa parte del pacchetto OFFICE. Le applicazioni di Office

Dettagli

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Shell Espressioni regolari

Shell Espressioni regolari Shell Espressioni regolari Metacaratteri Abbreviazione pathname Quoting Metacaratteri comuni di Shell Metacaratteri comuni Comandi di Filtro grep [opzioni] pattern [nomefile] Stampa le righe del file

Dettagli

Esempi di domande della seconda provetta

Esempi di domande della seconda provetta Esempi di domande della seconda provetta Data la seguente stringa di riferimenti a pagine virtuali: S = 1, 7, 5, 1, 2, 1, 7, 1, 5, 7, 2, 1, 5 valutare la percentuale di Page Fault se il rimpiazzamento

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C

Dettagli

Dati testuali. Caratteri e stringhe. Tipi di dato testuali. Dati testuali. Il sistema dei tipi C. Rappresentazione dei testi

Dati testuali. Caratteri e stringhe. Tipi di dato testuali. Dati testuali. Il sistema dei tipi C. Rappresentazione dei testi Tipi di dato testuali Caratteri Stringhe Caratteri e stringhe 5 Tipi di dato testuali I programmi visti finora erano in grado di elaborare esclusivamente informazioni numeriche Numeri eri (), numeri reali

Dettagli

Il sistema operativo UNIX/Linux. Gli script di shell

Il sistema operativo UNIX/Linux. Gli script di shell Il sistema operativo UNIX/Linux Gli script di shell Introduzione Le shell permettono La gestione di comandi su linea di comando La shell comprende automaticamente quando il costrutto termina e lo esegue

Dettagli

I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED

I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED SED è un programma in grado di eseguire delle trasformazioni elementari in un flusso di dati di ingresso,

Dettagli

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 27 Gennaio 2015

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 27 Gennaio 2015 COGNOME E NOME: MATRICOLA: Civile Ambiente e Territorio Non si possono consultare manuali, appunti e calcolatrici. Esercizio 1: [3 punto] Rappresentare i numeri 36 e 91 (in base 10) in notazione binaria

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE IN KORN SHELL E.M.

INTRODUZIONE ALLA PROGRAMMAZIONE IN KORN SHELL E.M. INTRODUZIONE ALLA PROGRAMMAZIONE IN KORN SHELL E.M. DAVID KORN, BELL LABS, "THE KORN SHELL COMMAND AND PROGRAMMING LANGUAGE", PRENTICE HALL, 989 esecuzione: - dalla shell (prompt $) $primo il file deve

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 3 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Ulteriori comandi sui file Confronto tra file: 1. > cmp file1 file2

Dettagli

Introduzione al DOS. 2 P. Gallo F. Salerno Task 1 Il sistema operativo DOS

Introduzione al DOS. 2 P. Gallo F. Salerno Task 1 Il sistema operativo DOS il libro si estende sul web LEZIONE Introduzione al DOS MS-DOS è un sistema operativo monoutente monotasking (cioè capace di far girare un solo programma alla volta). Alcune versioni del sistema operativo

Dettagli

1) Le Espressioni regolari

1) Le Espressioni regolari ESPRESSIONI REGOLARI e FILTRI SED, GREP e AWK 1) Le Espressioni regolari Un'espressione regolare è un modello che descrive un insieme di stringhe. Le espressioni regolari sono costruite, in maniera analoga

Dettagli

GLI SCRIPT DI SHELL. Lucidi a cura di B.De Carolis. UNIX shell script UdB- Dip Informatica

GLI SCRIPT DI SHELL. Lucidi a cura di B.De Carolis. UNIX shell script UdB- Dip Informatica GLI SCRIPT DI SHELL Lucidi a cura di B.De Carolis Shell Unix - Linux comandi Interfaccia di alto livello tra utente e SO. Il processore interpreta e mette in esecuzione comandi da: 1) standard input o

Dettagli

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

F O G L I O E L E T T R O N I C O

F O G L I O E L E T T R O N I C O Università degli Studi di Foggia Facoltà di Economia Corso di ELABORAZIONE AUTOMATICA DEI DATI PER LE DECISIONI ECONOMICHE E FINANZIARIE Classe XVII a.a. 2003/2004 Prof. Crescenzio Gallo F O G L I O E

Dettagli

Introduzione al Foglio Elettronico

Introduzione al Foglio Elettronico Microsoft Excel Introduzione al Foglio Elettronico Il Foglio Elettronico Si presenta come una grande tabella su un foglio di carta Le celle contengono differenti dati Numeri Testo Date Ecc I dati possono

Dettagli

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28 Indice 25 184 Introduzione XI Capitolo 1 Impostazione dell ambiente di sviluppo 2 1.1 Introduzione ai siti Web dinamici 2 1.2 Impostazione dell ambiente di sviluppo 4 1.3 Scaricamento di Apache 6 1.4 Installazione

Dettagli

Se state utilizzando la shell bash, ovvero la shell di riferimento per questo manuale, il terminale visualizzerà il seguente output:

Se state utilizzando la shell bash, ovvero la shell di riferimento per questo manuale, il terminale visualizzerà il seguente output: CAPITOLO 5 LA SHELL BASH Pietro Buffa Con questo capitolo comincia il nostro viaggio nel mondo delle Command Line Interface (CLI), ovvero le interfacce testuali a linea di comando tipiche dei sistemi UNIX

Dettagli

I Metacaratteri della Shell Unix

I Metacaratteri della Shell Unix I Metacaratteri della Shell Unix La shell Unix riconosce alcuni caratteri speciali, chiamati metacaratteri, che possono comparire nei comandi. Quando l utente invia un comando, la shell lo scandisce alla

Dettagli

OBIETTIVI SPECIFICI DI APPRENDIMENTO

OBIETTIVI SPECIFICI DI APPRENDIMENTO Disciplina:... Anno scolastico: 20.../20... Classe/i :... Docente:... DI APPRENDIMENTO SEZIONE 1 Premesse matematiche Nozioni fondamentali sui sistemi di numerazione Sistemi di numerazione in base diversa

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Pacchetti Applicativi Excel CdL Economia A.A. 2012/2013 Domenica Sileo Università degli Studi della Basilicata Pacchetti Applicativi: Excel >> Sommario Sommario 2 n Excel n Area

Dettagli

Lezione nr. 3. >> Le basi della tecnologia PHP per scrivere applicazioni per il web.

Lezione nr. 3. >> Le basi della tecnologia PHP per scrivere applicazioni per il web. Lezione nr. 3 >> Le basi della tecnologia PHP per scrivere applicazioni per il web. Ciao, spero tu abbia installato l editor di testo preferito o quello che ti ho consigliato e che tu sia riuscito a creare

Dettagli

Corso Programmazione 1 Capitolo 01: Concetti Elementari

Corso Programmazione 1 Capitolo 01: Concetti Elementari Corso Programmazione 1 Capitolo 01: Concetti Elementari Docente: Roberto Sebastiani - roberto.sebastiani@unitn.it Esercitatori: Mario Passamani - mario.passamani@unitn.it Alessandro Tomasi - alessandro.tomasi@unitn.it

Dettagli

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015 Java:Struttura di Programma Fabio Scanu a.s. 2014/2015 Altre Attenzioni da riservare Java è Case Sensitive: La variabile «a» e la variabile «A» sono diverse Java ha alcune regole di scrittura: I nomi delle

Dettagli

JAVASCRIPT. Tale file è associato alla pagina web mediante il tag