Realizzare uno script che verifichi la connettività ad Internet
OBIETTIVI DISCIPLINARI / ARGOMENTI TRATTATI
- trovare un algoritmo che risolva il problema proposto
- realizzare diagrammi di flusso corretti
- imparare i seguenti costrutti/istruzioni bash:
. while
. exit status
. ping
. ridirezione
. funzioni
- Evitare all'interno dello scripti i "magic numbers"
- rispettare le convenzioni per la scrittura di codice nel linguaggio di scripting Bash definite
PROCEDIMENTO / SPECIFICHE INIZIALI
- consegna esercizio entro il 23/05/16
- creare all'interno della propria home directory la cartella es4_2_CheckInternetConn, e caricare all'interno relazione (in pdf), flow chart e script;
GRIGLIA DI VALUTAZIONE [max 100 punti]:
[5 punti] - Rispetto delle convenzioni di scrittura: relazione in formato pdf, Flow chart in png
[5 punti] - relazione: premesse teoriche/specifiche
[30 punti] - relazione: diagrammi di flusso (utilizzo delle congiunzioni)
[30 punti] - script (corrispondenza con il D.F.)
[5 punti] - uso corretto della ridirezione
[5 punti] - uso dei magic numbers
[5 punti] - convenzioni di scrittura codice (intestazione, commenti, indent.)
[5 punti] - relazione: collaudo
[10 punti] - OPZIONALE - Uso delle funzioni
http://fb-labs.blogspot.it/2016/04/convenzioni-per-la-scrittura-di-codice.html
http://fb-labs.blogspot.it/2015/02/i-diagrammi-di-flusso.html
https://www.draw.io/
https://www.netacad.com/
http://www.dsi.unive.it/~lso/Slides/bash-02-scripting.pdf
http://www.pluto.it/files/ildp/guide/abs/index.html
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 3_2 (11.04.16)
Realizzare uno script che letti come parametri operatore operando1 e operando2, Esegua e visualizzi l'operazione richiesta.
OBIETTIVI DISCIPLINARI / ARGOMENTI TRATTATI
- trovare un algoritmo che risolva il problema proposto
- realizzare diagrammi di flusso corretti
- imparare i seguenti costrutti/istruzioni bash:
. espansione aritmetica
- rispettare le convenzioni per la scrittura di codice nel linguaggio di scripting Bash definite
PROCEDIMENTO / SPECIFICHE INIZIALI
- consegna esercizio entro il 25/04/16
- creare all'interno della propria home directory la cartella es3_2_calc, e caricare all'interno relazione, flow chart e script
- il primo parametro operatore può assumere i valori: piu, meno, per, diviso
- disegnare un diagramma di flusso ed esportarlo come immagine, usando il comando export as.. image
GRIGLIA DI VALUTAZIONE [max 100 punti]:
[5 punti] - Rispetto delle convenzioni di scrittura: relazione in formato pdf, Flow chart in png+xml
[5 punti] - relazione: premesse teoriche/specifiche
[30 punti] - relazione: diagrammi di flusso (utilizzo delle congiunzioni)
[35 punti] - script (corrispondenza con il D.F.)
[5 punti] - parametri inseriti da shell
[5 punti] - Controllo della validità dei parametri inseriti da shell
[5 punti] - convenzioni di scrittura codice (intestazione, commenti, indent.)
[10 punti] - relazione: collaudo
RIFERIMENTI / LINK
http://fb-labs.blogspot.it/2016/04/convenzioni-per-la-scrittura-di-codice.html
http://fb-labs.blogspot.it/2015/02/i-diagrammi-di-flusso.html
https://www.draw.io/
https://www.netacad.com/
http://www.dsi.unive.it/~lso/Slides/bash-02-scripting.pdf
http://www.pluto.it/files/ildp/guide/abs/index.html
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 2_2 (04.04.16)
Realizzare uno script che letti come parametri il nome e l'orario, visualizzi un messaggio coerente. Es. buongiorno Mario, buona notte Mario, ecc.
OBIETTIVI DISCIPLINARI / ARGOMENTI TRATTATI
- trovare un algoritmo che risolva il problema proposto
- realizzare diagrammi di flusso corretti
- imparare i seguenti costrutti/istruzioni bash:
. assegnazione e utilizzo variabili
. istruzione test
. costrutto if
. echo
. introduzione ai parametri
- rispettare le convenzioni per la scrittura di codice nel linguaggio di scripting Bash definite
- perfetta corrispondenza tra flowchart e script
- saper manipolare le stringhe
- conoscere il comando bc
PROCEDIMENTO / SPECIFICHE INIZIALI
- progetto da consegnare entro l'11/04/16
- scaricare il programma MobaxTerm per la connessione alla RaspberrPI della scuola (IP 217.171.47.186, porta 22)
- altri programmi utilizzabili per la connessione con la RaspberryPI sono JuiceSSH e ServerAuditor
- creare all'interno della propria home directory la cartella es2_2_saluti, e caricare all'interno relazione immagine flow chart e script
- definire almeno quattro fasce orarie (es. mattina, giorno pomeriggio sera e notte)
- la notte è definita per gli orari compresi tra le 22.00 e le 04.00
- disegnare un diagramma di flusso ed esportarlo come immagine, usando il comando export as.. image
- con MobaXterm usare il pulsante "upload to current folder" per caricare i file precedentemente creati nella cartella dell'esercizio
GRIGLIA DI VALUTAZIONE [max 100 punti]:
[5 punti] - Rispetto delle convenzioni di scrittura: relazione in formato pdf, Flow chart in png+xml
[5 punti] - relazione: premesse teoriche/specifiche
[30 punti] - relazione: diagrammi di flusso (utilizzo delle congiunzioni)
[30 punti] - script (corrispondenza con il D.F.)
[5 punti] - parametri inseriti da shell
[5 punti] - Controllo della validità dei parametri inseriti da shell
[5 punti] - Accettare l'orario nel formato hh.mm
[5 punti] - convenzioni di scrittura codice (intestazione, commenti, indent.)
[10 punti] - relazione: collaudo
[BONUS 20 punti] - Accettare l'orario nel formato hh.mm AM/PM
http://fb-labs.blogspot.it/2016/04/convenzioni-per-la-scrittura-di-codice.html
http://fb-labs.blogspot.it/2015/02/i-diagrammi-di-flusso.html
http://linux.about.com/library/cmd/blcmdl1_test.htm
https://www.draw.io/
https://www.netacad.com/
http://www.dsi.unive.it/~lso/Slides/bash-02-scripting.pdf
http://www.pluto.it/files/ildp/guide/abs/index.html
http://tldp.org/LDP/abs/html/string-manipulation.html
ESEMPIO
#========================================================================================== # # Project: saluti # Date: 04/04/216 # Author: Filippo Bilardo # #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # Realizzare uno script che letti come parametri il nome e l'orario, visualizzi un # messaggio coerente. Es. buongiorno Mario, buona notte Mario, ecc. # # sono definite 3 fasce orarie: # mattina 04.00 - 11.59 # giorno 12.00 - 21.59 # notte 22.00 - 03.59 # # Testato lo script con vari orari: 0,1,3,4,9,12,13,14,17,18,21,22,23 e lo script # funziona sempre correttamente # # Ver Date Comment #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 1.0.0 14.11.15 Versione iniziale ## #========================================================================================== # Controllo che i parametri inseriti siano validi, altrimenti visualizzo # un messaggio di errore e termino lo script # # TODO: scrivere il codice # utilizzo dei nomi più comprensivi per i parametri inseriti ora=$2 nome=$1 if [ $ora -ge 4 ]; then if [ $ora -lt 12 ]; then echo "Buona mattina $nome" else if [ $ora -lt 14 ]; then echo "Buon giorno $nome" else if [ $ora -lt 22 ]; then echo "Buona sera $nome" else echo "Buona notte $nome" fi fi fi else echo "Buona notte $nome" fi exit 0
IP=010.010.001.100 echo "IP=$IP, len IP=${#IP}" IP_OTT1=${IP:0:3} echo "Il primo ottetto è =$IP_OTT1"
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 1_2
home directory -> /home/3G_2015_16/cognome.nome
login --> cognome.nome
forzare la creazione della homedirectory
commento -> Cognome Nome
------
# 0. elminare l'utente se esiste già
# 1. creazione utente
useradd -d /home/3G_2015_16/verdi.giuseppe -m -c "Verdi Giuseppe" verdi.giuseppe
# 2. verifica
cat /etc/passwd
# 3. impostiamo la password
sudo passwd verdi.giuseppe
-------------------------------------------------------------------------------------------------------------
versione iniziale del 04.04.16
Nessun commento:
Posta un commento