CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS
Comandi da terminale Il comando sleep fa attendere un comando prima dell'esecuzione. Prova il comando: $ sleep 3s && echo Ciao Mondo! $
Comandi da terminale
Comandi da terminale
Le variabili in Linux Le variabili in linux si dividono in variabili di sistema e variabili personali. L'assegnazione avviene semplicemente indicando il nome Prova il comando: $ data=`date +%D` $ Crea la variabile data e ne assegna il valore risultante dal comando date +%D
Le variabili in Linux Il comando declare dichiara una variabile secondo varie modalità. Con l'opzione -p mostra tutte le variabili dichiarate. Prova il comando: $ declare p $ declare data1=`date +%D` $ dichiara la variabile data1 e ne assegna il valore risultante dal comando date +%D
Le variabili in Linux Il comando export dichiara una variabile di sistema o trasforma una variabile generica in variabile di sistema. Con l'opzione -p mostra tutte le variabili dichiarate. Prova il comando: $ export p $ export data1 $ export p $ dichiara la variabile data1 precedentemente
Le variabili in Linux
Le variabili in Linux Il comando unset cancella una variabile e
Le variabili in Linux Il comando type mostra a cosa si riferisce un comando in linux Prova il comando: $ type ls $ type ssh $
Le variabili in Linux Il comando hash mostra i comandi e il numero di volte che sono stati lanciati nella sessione.
Le variabili in Linux Il comando which mostra quante e quali versioni ci sono di un determinato
Altre funzionalità della shell Le principali funzionalità sono: Si possono annullare i comandi con la sequenza di tasti Ctrl+C Lo storico dei comandi utilizzabile con le frecce o con Ctrl+R Autocompletamento premendo il tasto TAB L'esecuzione condizionale di più comandi su una stessa linea && - esegue il comando solo se il precedente non ha dato errori (AND LOGICO) - esegue il comando solo se il precedente ha dato errore (OR LOGICO) E' possibile inserire più comandi nella stessa linea separandoli con il carattere ;.
Creare script della Bash Alcune semplici regole da seguire
Alcune considerzioni sul comando echo negli script Il comando echo serve dare un output (messaggi di risposta) ma può essere usato anche il comando printf. Con echo però possiamo utilizzare delle sequenze di escape. I principali sono: \n Vai a capo \r CR o Ritorno di carrello (vecchie macchine da scrivere) \t Tabulazione \b Spazio indietro o Backspace
L'input interattivo negli script Per fare in modo che ci sia un interruzione dello scrpt in attesa di un Input dell'utente si utilizza il comando read la cui sistassi è: read <nome variabile> Assegna a <nome variabile> ciò che l'utente digita.
L'input interattivo negli script
Le scelte condizionate Le condizioni negi script si esprimono secondo queste tipologie: [$numero -eq 0] vero se uguale a zero (si può usare anche =) [$numero -ne 0] vero se diverso da zero (si può usare anche!=) [$numero -gt 0 ] vero se maggiore di zero [$numero -lt 0 ] vero se minore di zero [$numero -ge 0 ] vero se maggiore o uguale a zero [$numero -le 0 ] vero se minore o uguale a zero
Le scelte condizionate L'istruzione condizionale IF Sintassi if CONDIZIONE1 then LISTACOMANDI1 elif CONDIZIONE2 then LISTACOMANDI2 elif CONDIZIONE3 then LISTACOMANDI3. else LISTACOMANDI_N
Le scelte condizionate L'istruzione condizionale CASE Sintassi case VARIABILE in VALORE1)
I cicli condizionati I cicli in programmazione sono delle interazioni che si ripetono fino a quando non si verificano degli eventi. Negli script possono essere di tre tipi (ciclo FOR, ciclo UNTIL e ciclo While). Sintassi del ciclo FOR for ELEMENTO in LISTA
I cicli condizionati Esempio del ciclo WHILE
I cicli condizionati Esempio del ciclo UNTIL
I cicli condizionati Esempio del ciclo FOR Esempio con un contatore: #!/bin/bash # Inizio lo script echo "Lo sai che so contare?" for ((i=1; i<=10; i++)) ; do echo $i sleep 1 done
I cicli condizionati Esempio del ciclo FOR Esempio con un contatore: #!/bin/bash # Inizio lo script j=0 for i in $(cat /etc/passwd cut d ":" f 1) do echo "Nr. $j $i" sleep 1 j=$((++j)) done
Esercitazioni 1. Crea un file con una sequenza di 10 ping all'interfaccia di loopback e chiamalo Esempio10. 2. Crea uno script (Script1) che legga il contenuto del file Esempio10 e ne mostri solo le prime 5 occorrenze della stringa icmp_req 3. Aggiungi allo script una domanda iniziale: Questo è uno scritp di prova. Vuoi veramente proseguire? 4. Gestisci la risposta facendo in modo che lo script venga eseguito solo se la risposta è si. 5. Fai in modo che il ciclo si ripeta con una domanda finale Vuoi ripetere fino a quando la risposta non sia no.