Esercitazione 1 la shell

Похожие документы
Shell BASH. Variabili Redirezione

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

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

Guida Linux. Molto rapida

SISTEMI OPERATIVI, RETI, INTERNET

INDICE. Vista Libretto Livello Digitale 2. Importazione di dati da strumento 3. Inserisci File Vari 5. Compensazione Quote 5.

EXCEL: FORMATTAZIONE E FORMULE

Gestione risorse (Windows)

Come utilizzare i riferimenti assoluti e relativi in Microsoft Excel

Linguaggio C: introduzione

DESCRIZIONE CREAZIONE APP Si suddivide in 4 fasi di lavoro: 1. PIANIFICAZIONE; 2. PROGETTAZIONE; 3. SVILUPPO; 4. DISTRIBUZIONE.

Procedura operativa per la gestione della funzione di formazione classi prime

Automatizzare le attività con le macro di Visual Basic

Oggetto: Utility per la variazione massiva del codice IVA.

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

File di script. I File di Script Corso 2D - R.Virili 1

DOCUMENTAZIONE WEB RAIN - ACCESSO CLIENTI

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

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

Guida all utilizzo di Campaign Builder

Guida all installazione ed all uso di ASIM

ArubaKey Installazione Versione 2

Fare calcoli e grafici con Excel

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

Grafici e Pagina web

ARCHITETTURA FISICA DEL SISTEMA

Backup e ripristino Guida per l'utente

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

Esercitazione 4. Comandi iterativi for, while, do-while

Mini-Corso di Informatica

Quick Print. Quick Print. Guida Utente. Copyright 2013 Hyperbolic Software.

Importazione dati. e/fiscali Spesometro - Rel con gestionale e/satto. Gestionale e/satto

Il terminale per tutti

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

ACCESS. Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati.

VISUAL BASIC FOR APPLICATION

Jclic Download e installazione

Manuale Utente CMMG Corso Medici Medicina Generale

Video Scrittura (MS Word) Lezione 2 Tabelle e Immagini

Shell di Linux e Comandi Utente

WINDOWS Avviare Windows95. Avviare Windows95 non è un problema: parte. automaticamente all accensione del computer. 2. Barra delle applicazioni

Architettura degli elaboratori Docente:

File System I parte. File System

Ministero della Salute

I Metacaratteri della Shell Unix

Funzioni condizionali

COMPILAZIONE DELLA DOMANDA ON LINE

Modulo 17: Invio del BF tramite

Guida all uso della piattorma elearning QUICKPLACE

Javascript e CSS nelle pagine WEB

Veneto Lavoro via Ca' Marcello 67/b, Venezia-Mestre tel.: 041/

Configurare il client Mail

Informatica d ufficio

Procedura tecnica di accreditamento dei Registrar

MANUALE REGISTRO ELETTRONICO DOCENTI ANNO SCOLASTICO 2014/2015 I.T.E. SCARPELLINI - FOLIGNO

PRELIEVO LICENZE D USO PROGRAMMI TEAMSYSTEM ANNO 2016 FASE 1 PRELIEVO LICENZE DAL SITO

Symantec IT Management Suite 8.0 powered by Altiris technology

Strumenti di Presentazione Microsoft Power Point. CORSO DI INFORMATICA LIVELLO 1 - Lezioni 7-8. Docente Marsili M.

Guida Utente. Come utilizzare lo strumento e-learning e fruire dei corsi on line

Fondamenti VBA. Che cos è VBA

Navigare in Internet Laboratorio di approfondimento la creazione di siti web e/o blog. Marco Torciani. (Seconda lezione) Unitre Pavia a.a.

U.T.E FOGLIO ELETTRONICO. Università della Terza Età. Sede di Novate Milanese. Corso Informatica Approfondimento. Docente: Giovanni Pozzi

Manuale Pubblicazione esito di gara/affidamento diretto svolti al di fuori del sistema SICP

Grafici. 1 Generazione di grafici a partire da un foglio elettronico

Programmazione. Cognome... Nome... Matricola... Prova scritta del 22 settembre Negli esercizi proposti si utilizzano le seguenti classi:

L utility Unix awk [Aho-Weinberger-Kernighan]

I dati rappresentati (tutti di pura fantasia) sono contenuti in un file excel denominato Personale.xls.

Questa è la finestra dei dettagli, è possibile selezionare anche da qui un modello o un pezzo per essere aperto.

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

Per poter interagire con un database in rete mediante uno script php bisogna. innanzitutto cerare una connessione. Ciò si ottiene mediante la funzione

testo Saveris Web Access Software Istruzioni per l'uso

NOTE OPERATIVE DI RELEASE. RELEASE Versione Applicativo: GECOM F24

Installazione e uso di Document Distributor

Data Import e Probabilità. Renato Mainetti

Formattare il testo con gli stili

Compilazione rapporto di Audit in remoto

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

Definizione di metodi in Java

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

Транскрипт:

Esercitazione 1 la shell

Obiettivi Prendere confidenza con i comandi per la gestione del file system Utilizzare gli strumenti visti a lezione per creare tre semplici script bash

File system 1/2 1. Verificare il contenuto della propria home directory 2. Spostarsi nella directory superiore e visualizzarne il percorso 3. Verificare i diritti dei file presenti 4. Verificare se e dove è possibile creare dei file 5. Creare un file nella propria home, dandogli il nome del proprio username come si può fare utilizzando il comando whoami?

File system 2/2 6. Verificare che gli altri utenti del proprio gruppo possono leggere il file ma non modificarlo 7. Creare una directory di nome temp, e inserire in essa un link al file creato al punto 5 8. Verificare il contenuto della propria home è cambiato qualcosa rispetto a prima? 9. Cancellare il file creato al punto 5 e verificare il contenuto di temp 10. Cancellare la directory temp

Richiami: espansione Quando un comando contiene uno schema, la bash lo interpreta in due passi: 1. Sostituzione dello schema con i nomi che fanno match 2. Esecuzione del comando espanso Es: for i in../* do echo $i done 1.../* viene espanso con la lista dei file contenuti nel direttorio padre 2. viene eseguito il comando vero e proprio, con i che cicla sugli elementi della lista espansa

Problemi Come faccio a creare un file di nome ( :--> )? Devo poter comunicare alla shell che i caratteri speciali vanno privati del loro significato e considerati come normali. Come faccio a dire che nel comando echo direttorio corrente: pwd pwd è esso stesso un comando da eseguire?

Quoting \ '<testo>' <testo> "<testo>" Il carattere successivo non viene interpetato come carattere speciale <testo> viene protetto da qualsiasi tipo di espansione <testo> viene interpretato come un comando da eseguire <testo> viene protetto da espansioni, con eccezione di $ \

Problemi (risolti) Come faccio a creare un file di nome ( :--> )? Che succede levando questa barra? > \(\ :--\>\ \ \ \) oppure > "( :--> )" oppure > '( :--> )' echo direttorio corrente: pwd

Espressioni Come faccio a eseguire una espressione aritmetica 1 + 3? Uso della keyword expr expr 1 + 3 Se dispongo di una variabile numerica var, come faccio a dire che nel comando echo risultato: var+1 var+1 è il risultato della corrispondente espressione? echo risultato: expr $var + 1

Altri esempi rm '*$var'* rm "*$var"* Rimuove i file che fanno match con * $ v a r Rimuove i file che fanno match con * se var non è definita * <contenuto var> altrimenti echo '< pwd >' echo "< pwd >" Mostra < pwd > Mostra <direttorio corrente>

Script File di testo contenente una serie di comandi Ha due caratteristiche: Deve essere eseguibile Deve cominciare con #!/bin/bash Se non specificato, viene utilizzata la shell di default dell utente (definita in /etc/passwd) # è visto dalla shell come commento ma #! è visto dal sistema operativo come magic number che identifica uno script; il s.o. capisce così che deve invocare /bin/bash come interprete dello script NOTA BENE: uno script viene interpretato (non esiste una fase di compilazione)! L interprete acquisisce ed esegue i comandi uno per volta

Esercizio 1 Creare uno script che abbia la sintassi./ps_monitor.sh [#lines] Lo script, in caso di assenza dell argomento, deve mostrare i processi di tutti gli utenti (compresi quelli senza terminale di controllo) con anche le informazioni sul nome utente e ora di inizio Se viene passato come argomento un intero (#lines) deve mostrare i primi #lines processi ordinati in senso crescente per ora di inizio del processo NOTA: non tutte le righe prodotte in output da ps hanno contenuto informativo rilevante

Esercizio 2 Creare uno script che abbia la sintassi./lines_counter.sh <directory> [up down] Lo script deve elencare i file contenuti nella directory con relativo numero di linee, ordinati in senso crescente (up) o decrescente (down) NOTA: controllare Che il primo argomento sia effettivamente una directory Che il secondo argomento sia effettivamente la stringa up o down

Esercizio 3 Creare uno script che abbia la sintassi./backup.sh <nome file> <nome backup> Se il file è una directory, lo script deve creare una sottodirectory (rispetto a livello corrente) di nome: <nome file> <nome backup> copiare ricorsivamente in essa il contenuto della directory Se il file è un file normale, lo script deve crearne 5 copie di nome <nome file>*i<nome backup> i=1..5

Suggerimenti generali Guardare ATTENTAMENTE il man di bash per la sintassi degli script I test, utilizzati come condizioni logiche negli script, sono un abbreviazione del comando test if [ -n $stringa ] then... sono equivalenti if test n $stringa then... Quindi, per la sintassi e le varie opzioni consultare il man di test

Suggerimenti sugli esercizi ESERCIZIO 1: Guardare ATTENTAMENTE il man di ps e head ESERCIZIO 2: Guardare ATTENTAMENTE il man di wc e sort Bisogna poter esprimere una cosa del tipo: lista di tutti i file che stanno nella directory passata come argomento Fare molta attenzione a come si utilizza l argomento se la directory passata o i file in essa contengono degli spazi o altri caratteri speciali che succede? ESERCIZIO 3: Guardare ATTENTAMENTE il man di cp Anche qua, fare attenzione al quoting