I Metacaratteri della Shell Unix



Похожие документы
Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Corso di Laboratorio di Sistemi Operativi

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

Il sistema operativo UNIX/Linux. Gli script di shell

Laboratorio di Programmazione

Shell Espressioni regolari

Reti di Calcolatori PROTOCOLLO FTP. File. File Transfer Protocol Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati

L utility Unix awk [Aho-Weinberger-Kernighan]

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

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

NOZIONI BASE PER ESERCITAZIONI

Shell di Linux e Comandi Utente

Terza lezione: Directory e File system di Linux

Mini Guida per Apple XCode. Maurizio Martinelli

NOZIONI BASE SHELL E SCRIPT LINUX

Gestione File e Cartelle

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Informatica Generale 1 - Esercitazioni Introduzione all uso della command-line shell

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

Introduzione alla. Alessandra Giordani Lunedì 27 febbraio

Il software del PC. Il BIOS

Introduzione ad UNIX e la Shell

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

Introduzione alla programmazione in C

Usare Python in Linux

Controllo di processi

Word Libre Office. Barra degli strumenti standard Area di testo Barra di formattazione

Esercizio 2. Client e server comunicano attraverso socket TCP

Prelievo di un istruzione. Istruzioni macchina. Tipi di istruzioni. Registri principali della CPU e loro ruolo

MINI GUIDA AI COMANDI PIU' USATI PER I NOSTRI STB

Struttura del Micro Filesystem (µfs)

Prima Esercitazione. Unix e GNU/Linux. GNU/Linux e linguaggio C. Stefano Monti smonti@deis.unibo.it

operazioni preliminari 1. generare il proprio sito con FCM (stagione in corso) selezionando, nelle interrogazioni, "tutti i dati" come in figura

Ca ra tteristiche dei sistem i GN U/L inux. Struttura di un sistema GNU/Linux Il filesystem La shell

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

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

RISOLUTORE AUTOMATICO PER SUDOKU

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

Funzioni in C. Violetta Lonati

Alcune estensioni comuni Tipo del file Estensione corrispondente..wav,.mid,.voc Grafica.bmp,.jpg,.gif,.tif Documenti web.htm,.html

Corso di Laboratorio di Sistemi Operativi

Programmare in Java. Olga Scotti

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014

Manuale Utente Amministrazione Trasparente GA

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

Registratori di Cassa

Operazioni fondamentali

PROGRAMMAZIONE CONSUNTIVA Codice Mod. RQ 23.2 Pag 1/5. Sistemi e Reti (articolazione Telecomunicazione) Classe

SHELL GNU/Linux Bash. Conoscere e configurare il proprio ambiente bash. Kernel speaks: dmesg

CONFIGURAZIONE SERVER APACHE (XAMPP): ACCESSO SICURO A DIRECTORY DEL FILE SYSTEM.

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. **********

Editor vi. Editor vi

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Linguaggio di bash per esempi. Tre modi per quotare. Esempio. quotare: significa trattare caratteri speciali come normali caratteri

MANUALE UTENTE PROTEUS GRPIGD - GESTIONE RICHIESTE PROTOCOLLO INFORMATICO E GESTIONE DOCUMENTALE

Dispensa YACC: generalità

Struttura di un programma Java

Linux e la shell Bash

NetMonitor. Micro guida all uso per la versione di NetMonitor

Il sistema operativo: interazione con l utente

Richiamo compilatore FORTRAN 77

Introduzione. Esempio 1. Soluzione: SPOSTA_1.BAT

Il sistema di pubblicazione di informazioni didattiche sul sito di Ateneo: guida e regole d uso per i docenti.

Il Web Server e il protocollo HTTP

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console

MANUALE PARCELLA FACILE PLUS INDICE

Sistemi Operativi: Programmazione di Sistema

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Il Sistema Operativo (1)

L archiviazione della posta elettronica può aiutarci a recuperare spazio senza costringerci a cestinare documenti importanti

La shell di Unix. Uso interattivo e scripting

La catalogazione con LIBERO Modulo Catalogazione

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

MANUALE EDICOLA 04.05

Транскрипт:

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 ricerca di eventuali metacaratteri, che processa in modo speciale. Una volta processati tutti i metacaratteri, viene eseguito il comando. Esempio: user> ls *.java Albero.java div.java ProvaAlbero.java AreaTriangolo.java EasyIn.java ProvaAlbero1.java AreaTriangolo1.java IntQueue.java Il metacarattere * all interno di un pathname è un abbreviazione per un nome di file. Il pathname *.java viene espanso dalla shell con tutti i nomi di file che terminano con l estensione.java. Il comando ls fornisce quindi la lista di tutti e soli i file con tale estensione.

Abbreviazione del Pahtname I seguenti metacaratteri, chiamati wildcard sono usati per abbreviare il nome di un file in un pathname: Metacarattere Significato * stringa di 0 o più caratteri? singolo carattere [ ] singolo carattere tra quelli elencati { } stringa tra quelle elencate Esempi: user> cp /JAVA/Area*.java /JAVA backup copia tutti i files il cui nome inizia con la stringa Area e termina con l estensione.java nella directory JAVA backup. user> ls /dev/tty? /dev/ttya /dev/ttyb

... esempi user> ls /dev/tty?[234] /dev/ttyp2 /dev/ttyp4 /dev/ttyq3 /dev/ttyr2 /dev/ttyr4 /dev/ttyp3 /dev/ttyq2 /dev/ttyq4 /dev/ttyr3 user> ls /dev/tty?[2-4] /dev/ttyp2 /dev/ttyp4 /dev/ttyq3 /dev/ttyr2 /dev/ttyr4 /dev/ttyp3 /dev/ttyq2 /dev/ttyq4 /dev/ttyr3 user> mkdir /user/studenti/rossi/{bin,doc,lib} crea le directory bin, doc, lib.

Il quoting Il meccanismo del quoting è utilizzato per inibire l effetto dei metacaratteri. I metacaratteri a cui è applicato il quoting perdono il loro significato speciale e la shell li tratta come caratteri ordinari. Ci sono tre meccanismi di quoting: il metacarattere di escape \ inibisce l effetto speciale del metacarattere che lo segue: user> cp file file\? user> ls file* file file? tutti i metacaratteri presenti in una stringa racchiusa tra singoli apici perdono l effetto speciale: user> cat file*?... i metacaratteri per l abbreviazione del pathname presenti in una stringa racchiusa tra doppi apici perdono l effetto speciale (ma non tutti i metacaratteri della shell): user> cat "file*?"...

Ridirezione dell I/O Di default i comandi Unix prendono l input da tastiera (standard input) e mandano l output ed eventuali messaggi di errore su video (standard output, error). L input/output in Unix può essere rediretto da/verso file, utilizzando opportuni metacaratteri: Metacarattere Significato > ridirezione dell output >> ridirezione dell output (append) < ridirezione dell input << ridirezione dell input dalla linea di comando ( here document ) 2> ridirezione dei messaggi di errore (bash Linux) Esempi: user> ls LABSO > temp user> more temp lezione1.aux lezione1.log lezione1.tex lezione2.dvi lezione2.tex lezione1.dvi lezione1.ps lezione2.aux lezione2.log lezione2.tex

user> echo ciao a tutti >file user> more file ciao a tutti user> echo ciao a tutti >>file user> more file ciao a tutti ciao a tutti... esempi # ridirezione dell output # ridirezione dell output (append) Il comando wc (word counter) fornisce numero di linee, parole, caratteri di un file: user> wc <progetto.txt 21 42 77 user> wc <<delim # here document? queste linee formano il contenuto? del testo? delim 2 7 44 user> man -s2 passwd # ridirezione dei messaggi di errore No entry for passwd in section(s) 2 of the manual. user> man -s2 passwd 2>temp

Pipe Il metacarattere (pipe) serve per comporre n comandi in cascata in modo che l output di ciascuno sia fornito in input al successivo. L output dell ultimo comando e l output della pipeline. La sequenza di comandi user> ls /usr/bin > temp user> wc -w temp 459 ha lo stesso effetto della pipeline: user> ls /usr/bin wc -w 459 I comandi ls e wc sono eseguiti in parallelo: l output di ls è letto da wc mano a mano che viene prodotto. Per mandare in stampa la lista dei files in /usr/bin: user> ls /usr/bin lpr Per visualizzare l output di ls pagina per pagina user> ls more

Esercizi Scrivete un unico comando (pipeline) per copiare la directory dir1 (con tutto il suo contenuto) nella directory dir2; fornire il numero di file (e directory) a cui avete accesso, contenuti ricorsivamente nella directory /home (si può utilizzare ls -R? e con il comando find?); fornire la lista dei file della home directory il cui nome è una stringa di 3 caratteri seguita da una cifra. Qual è la differenza tra i seguenti comandi? ls ls cat ls more Quale effetto producono i seguenti comandi? uniq < file, dove file è il nome di un file; who wc -l ; ps -e wc -l.