NOZIONI BASE SHELL E SCRIPT LINUX

Похожие документы
Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

EasyPrint v4.15. Gadget e calendari. Manuale Utente

Laboratorio di Programmazione

Guida all uso di Java Diagrammi ER

INTERNET EXPLORER Guida introduttiva CAPITOLO 1 Fig. 1

File, Modifica, Visualizza, Strumenti, Messaggio

NOZIONI BASE PER ESERCITAZIONI

Convertitori numerici in Excel

Classificazione: DI PUBBLICO DOMINIO. LOMBARDIA INFORMATICA S.p.A.

APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO

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

Guida rapida per i docenti all'uso della piattaforma di e-learning dell'istituto Giua

M:\Manuali\VARIE\GENERAZIONE REPORT PARAMETRICI.doc GENERAZIONE REPORT PARAMETRICI

Matematica in laboratorio

1.0 GUIDA PER L UTENTE

Per effettuare la stampa di una cartella di lavoro si accede al comando. Stampa dal menu File o si utilizza il pulsante omonimo sulla barra

COME ELIMINARE PARTI DEL TEMPLATE IN PAGINE SINGOLE

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.

Procedura per creare un archivio storico remoto nelle 24 ore giornaliere

Laboratorio di Informatica

Il sistema operativo UNIX/Linux. Gli script di shell

Le query. Lezione 6 a cura di Maria Novella Mosciatti

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono:

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.

Editor vi. Editor vi

MANUALE EDICOLA 04.05

MINI GUIDA AI COMANDI PIU' USATI PER I NOSTRI STB

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

Biblioteca di Cervia NOZIONI BASE DI INFORMATICA

FINE ANNO BOLLE / FATTURE PER E/SATTO

NAVIGARE IN INTERNET (Dal latino inter e dall inglese net = tra la rete )

MANUALE PARCELLA FACILE PLUS INDICE

ISI s.r.l. Corso di Access 05 CREARE UN ELENCO MAILING ED INVIARE MESSAGGI DI POSTA ELETTRONICA Pag. 1/6

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo

Word. Cos è Le funzioni base Gli strumenti. 1

Procedura per creare un archivio storico locale nelle 24 ore giornaliere

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

Manuale del portale Club Filiali

Entrare nel sistema. Clicca su Entra per entrare nel sistema. PAGINA 1

INTRODUZIONE A WINDOWS

Terza lezione: Directory e File system di Linux

Esercizio sui data base "Gestione conti correnti"

GESTIONE CANTINA MANUALE GESTIONE CANTINA 1

GUIDA ALLE SOLUZIONI

Registratori di Cassa

Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.

Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore

Appunti di: MICROSOFT EXCEL

lo PERSONALIZZARE LA FINESTRA DI WORD 2000

LUdeS Informatica 2 EXCEL. Seconda parte AA 2013/2014

5-1 FILE: CREAZIONE NUOVO DOCUMENTO

Database 1 biblioteca universitaria. Testo del quesito

Innanzitutto andiamo sul sito ed eseguiamo il download del programma cliccando su Download Dropbox.

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

La catalogazione con LIBERO Modulo Catalogazione

Sistema Informativo Gestione Fidelizzazione Clienti MANUALE D USO

[Tutoriale] Realizzare un cruciverba con Excel

Procedura SMS. Manuale Utente

Introduzione alla. Alessandra Giordani Lunedì 27 febbraio

Esercizio data base "Biblioteca"

Il web server Apache Lezione n. 3. Introduzione

Libero Emergency PC. Sommario

COME UTILIZZARE ARCHIVE-HOST

MICROSOFT OFFICE WORD 2010 STAMPA UNIONE

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1

Questa guida vi illustrerà i principali passaggi da eseguire per l'inserimento dei Bandi di gara.

CTVClient. Dopo aver inserito correttamente i dati, verrà visualizzata la schermata del tabellone con i giorni e le ore.

EXCEL FUNZIONI PRINCIPALI

GUIDA PER LA COMPILAZIONE DEL CAMP3

MERIDESTER SOFTWARE DI COMUNICAZIONE PER PC

Manuale. Gestione biblioteca scolastica by Rosset Pier Angelo is licensed under a Creative Commons

MODULO 5 ACCESS Basi di dati. Lezione 4

Procedure di ripristino del sistema.

Dalla a alla zeta: Guida facile ALCUNE NOTE SU COME UTILIZZARE vers. 1 Dicembre 2010 per le assicurazioni non profit

Manuale d uso Lexun Area Riservata proprietà di logos engineering - Sistema Qualità certificato ISO 9001 Det Norske Veritas Italia

WORD 97 SCRIVERE UNA TESI DI LAUREA

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Servizio on-line di Analisi e Refertazione Elettrocardiografica

Guida Utente Cos è aworkbook Cataloghi e sessioni Prodotti Assortimenti Risorse Presentazioni 11 Procedura d ordine

Monitor Orientamento. Manuale Utente

Calcolare il massimo di una lista

GUIDA ALL ACQUISTO DELLE FOTO

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

Entrematic. Guida all e-commerce

MANUALE UTENTE Fiscali Free

Транскрипт:

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 2.1.2 Processi (programmi in esecuzione) 2.1.3 Password 2.1.4 Autorizzazioni sui le e directory 2.2 Script della shell 2.2.1 Intestazione 2.2.2 Stampare una scritta su video 2.2.3 Variabili 2.2.4 Diramazioni 2.2.4.1 if then e if then else 2.2.4.2 case 2.2.5 Cicli Pag.1 Scritta da Ermes ZANNONI

1. Introduzione Dispensa introduttiva alla shell di LINUX. Per chi è alle prime armi e non vuole istallarlo vi consiglio di cercare una distribuzione a vostro piacimento che faccia il boot da CD-ROM (linux live). Questa dispensa è di distribuzione gratuita per cui non può essere messa in vendita o utilizzata per scopi commerciali. 2. La Shell Avviata la shell da utente e non amministratore (root) ci appare una schermata nera con una scritto: [nome@percorso host]$ il simbolo $ indica che siamo entrato con l accesso di utente, per cui non avremo il completo controllo del PC. Se al posto del simbolo $ abbiamo il simbolo # [nome@percorso host]# vuol dire che siamo entrati come amministratori (root). Per passare da utente a amministratore bisogna digitare su e successivamente viene richiesta di digitare la password di amministratore [nome@percorso host]$ su password: [nome@percorso host]# Attenzione, per chi utilizza le distribuzioni di linux live cercate su internet la password per accedere al sistema come amministratori. Se eventualmente non ci si ricorda esattamente come si chiama il le da cercare, abbiamo a disposizione dei caratteri jolly, che sono * e?. Ad esempio se vogliamo cercare il le Pippo.txt possiamo scrivere nel seguente modo : P?ppo.txt *.txt Pi*.txt Se si lancia qualche comando che effettua un lungo ciclo, con la sequenza di tasti CONTROL + D e possibile arrestarlo. Pag.2 Scritta da Ermes ZANNONI

2.1 Comandi da Shell In seguito troverete l elenco con relativa spiegazione dei comandi principali. Per sapere le numerose opzioni di un determinato comando vedere il manuale, digitare: man comando -> man cd Per uscire dal man basta premere q. 2.1.1 File e directory Comando Note ls Elenca il contenuto di una directory ls -a Elenca il contenuto di una directory e i le nascosti ls -l Elenco dettagliato dei le e directory cd dir Per passare da una directory all altra cd.. Per tornare indietro di una directory cp le1 le2 Copia il contenuto del le1 nel le2 mv le1 le2 Rinomina il le1 in le2 rm le Elimina un le mkdir dir Crea una nuova directory rmdir dir Eliminare una directory pwd Mostra la corrente directory di lavoro diff le1 le2 Mostra la differenza tra due le di testo le le Per sapere il formato del le nd dir name Per trovare un le in una directory le -print 2.1.2 Processi (programmi in esecuzione) Comando Note ps Per visualizzare i programmi in esecuzione ps u Per avere un report più dettagliato kill pid Per terminare un processo kill STOP pid Per sospendere un processo kill CONT pid Per riavviare un processo Aggiungendo & alla ne del comando, possiamo far eseguire un processo in background, in comando & questo modo possiamo continuare a fare nuove operazioni Per vericare lo stato di un programma, digitando il comando ps, bisogna guardare sulla colonna STAT se il processo è su S (sospeso) o R (in esecuzione). Pag.3 Scritta da Ermes ZANNONI

2.1.3 Password Comando passwd Note Per cambiare la password 2.1.4 Autorizzazioni sui le e directory Ogni le e ogni directory ha delle autorizzazioni per leggere, scrivere e eseguire. Per visualizzare le seguenti autorizzazioni dei le utilizzare il comando ls -l. Le autorizzazioni verranno visualizzate nel seguente modo: - rwx r - rw- Il primo trattino indica che è un le senza utilizzi speciali, se fosse una directory al posto del trattino avremmo una d. I successivi tre gruppi da tre caratteri indicano le autorizzazioni, suddivisi in: 1 gruppo Autorizzazioni utente 2 gruppo Autorizzazioni di gruppo 3 gruppo Altre autorizzazioni Ogni gruppo e ulteriormente suddiviso in: r lettura w scrittura x esecuzione - nulla Comando chmod numero le esempio: chmod 600 testo.txt Note Per modicare le autorizzazioni sui le e le directory Numero: 644 utente(r/w), gruppo e altro(r) 600 utente(r/w), gruppo e altro(-) 755 utente(r/w/x), gruppo e altro(r/x) 700 utente(r/w/x), gruppo e altro(-) 711 utente(r/w/x), gruppo e altro(x) Pag.4 Scritta da Ermes ZANNONI

2.2 Script della Shell Uno script è semplicemente una serie di comandi scritti all interno di un le testo. Ricordarsi di controllare le autorizzazioni del le che si crea. Una volta scritto il nostro programma possiamo avviarlo tramite la shell utilizzando il nome del le preceduto dalla sintassi./, esempio:./nome_le 2.2.1 Intestazione La prima riga deve essere obbligatoriamente la seguente, scritta senza spazzi: Successivamente a questa consiglio sempre di scrivere qualche commento preceduto dal simbolo #, esempio: # # ---------------------------------------- # Stampa sul video la scritta CIAO A TUTTI # ---------------------------------------- # 2.2.2 Stampare una scritta su video Per stampare una scritta su video utilizziamo il comando echo, vedi esempio: echo CIAO A TUTTI 2.2.3 Variabili Nell esempio seguente vediamo l utilizzo di una variabile all interno di un programma: variabile_1=verde variabile_2=rosso echo $variabile_1 $variabile_2 eseguendo questo script, otteniamo sullo schermo: verde rosso Pag.5 Scritta da Ermes ZANNONI

Oltre a questo scopo, abbiamo delle variabili speciali che ci permettono di avere dei parametri tramite la riga di comando, per essere più chiari facciamo alcuni esempi di utilizzo: 1 Esempio variabile_1=$1 variabile_2=$3 echo $variabile_1 $variabile_2 Se questo script lo lanciamo con il seguente comando:./nome_le rosso verde blu Otterremo stampato nello schermo: rosso blu Sono collegati nel seguente modo: $1 -> rosso $2 -> verde $3 -> blu 2 Esempio echo $1 shift echo $1 shift echo $1 shift Se questo script lo lanciamo come nell esempio precedente:./nome_le rosso verde blu Otterremo stampato nello schermo: rosso verde blu In pratica inserendo il comando shift ci permette di scalare gli argomenti, da $3 a $2, da $2 a $1. Pag.6 Scritta da Ermes ZANNONI

3 Esempio echo $1 shift echo $1 shift echo $# Se questo script lo lanciamo come nell esempio precedente:./nome_le rosso verde blu Otterremo stampato nello schermo: rosso verde 1 La variabile $# contiene il numero di argomenti passati allo script, nel nostro caso utilizzando l istruzione shift ci consente di sapere quanti elementi rimangono. 4 Esempio echo $@ Se questo script lo lanciamo come nell esempio precedente:./nome_le rosso verde blu Otterremo stampato nello schermo: rosso verde blu La variabile $@ consente di passare tutti gli argomenti allo script. 5 Esempio echo $0 Script non valido Se questo script lo lanciamo come nell esempio precedente:./nome_le rosso verde blu Otterremo stampato nello schermo: nome_le non valido La variabile $0 consente di ottenere il nome dello script. Pag.7 Scritta da Ermes ZANNONI

2.2.4 Diramazioni 2.2.4.1 if then e if then else if [ $1 = verde ]; then echo il colore è verde if [ $1 = verde ]; then echo il colore è verde else echo il colore non è verde Quando viene eseguito uno dei due script precedenti, l istruzione if valuta se l argomento $1 = verde sia vera o falsa (valore booleano), se questa valutazione risultasse vera esegue la prima istruzione (echo il colore è verde), se nel caso risultasse falsa la seconda (echo il colore non è verde). Volendo possiamo fare tanti altri tipi di controlli, ve ne elenco alcuni: && (and) o (or) funzione and e or -e if [ $1 = verde ] [ $1 = giallo ]; then echo il colore è verde Restituisce true se un le è esistente if [ -e le.txt ]; then echo il le è esistente else echo il le non è esistente Pag.8 Scritta da Ermes ZANNONI

-s Restituisce true se un le non è vuoto test aritmetici esempio: if [ -s le.txt ]; then echo il le è scritto else echo il le è vuoto -eq -> uguale -ne -> non uguale -lt -> minore -gt -> maggiore -le -> minore o uguale -ge -> maggiore o uguale if [ 13 eq 13 ]; then echo il valore è 13 2.2.4.2 case Se si vuole una diramazione multipla, utilizziamo il comando case che prende di prendere percorsi diversi in base al valore della stringa. case $1 in verde) echo colore verde ;; rosso) echo colore rosso ;; giallo) echo colore giallo ;; *) echo altri ;; esac Questo script confronta $1 con ogni case delimitato dal carattere ), se trova un valore case uguale a $1, esegue i comandi successivi no a ;;. Terminate le istruzioni salta al termine dell istruzione esac. Nell esempio precedente se $1 non trova un case uguale a esso esegue il l ultimo caso *) Pag.9 Scritta da Ermes ZANNONI

2.2.5 Cicli Se dobbiamo ripetere alcune volte le stesse istruzioni variando solamente alcune variabili conviene utilizare il ciclo for: Ottenendo: for stringa in verde rosso giallo; do echo $stringa done verde rosso giallo La shell imposta la variabile stringa con il valore del primo elemento (verde), successivamente stampa su video il suo risultato arrivando all istruzione done che fa iniziare il processo dal for, impostando nuovamente la variabile stringa con il successivo elemento (rosso), cosi via. Pag.10 Scritta da Ermes ZANNONI