Strumenti Utente

Strumenti Sito


informatica:sol:laboratorio20:esercitazionib:esercitazione6

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
informatica:sol:laboratorio20:esercitazionib:esercitazione6 [21/03/2020 alle 17:11 (5 anni fa)] – [Esercizio 4] Massimo Torquatiinformatica:sol:laboratorio20:esercitazionib:esercitazione6 [24/03/2020 alle 09:06 (5 anni fa)] (versione attuale) Massimo Torquati
Linea 21: Linea 21:
 bdir=$(basename $dir) bdir=$(basename $dir)
 if [ -w ....... ]; then                     # il file esiste ed e scrivibile if [ -w ....... ]; then                     # il file esiste ed e scrivibile
-    echo "il file $bdir.tar.gz esiste gia sovrascriverlo (S/N)?"+    echo -n "il file $bdir.tar.gz esiste gia', sovrascriverlo (S/N)?"
     read yn                                 # (commenta il codice) .........     read yn                                 # (commenta il codice) .........
-    if [ "$yn!= "S" ]; then               # ..............+    if [ x$yn != x"S" ]; then               # ..............
           exit 0;           exit 0;
     fi     fi
Linea 30: Linea 30:
 echo "creo l'archivio con nome $bdir.tar.gz" echo "creo l'archivio con nome $bdir.tar.gz"
  
-tar cf $bdir.tar $dir ...............       # appende l’output dello std-error nel file error.txt    +tar cf $bdir.tar $dir ...............       # appende l’output sullo std-error nel file error.txt    
-if [ ...... ]; then                         # controllo che il comando sia andato a buon fine+if [ ...... ]; then                         # controlla che il comando sia andato a buon fine
     echo "Errore nella creazione dell'archivio"     echo "Errore nella creazione dell'archivio"
     exit 1     exit 1
 fi fi
-gzip $bdir.tar  ..........                  # appende l’output dello std-error nel file error.txt +gzip $bdir.tar  ..........                  # appende l’output sullo std-error nel file error.txt 
-if [ ...... ]; then                         # controllo che il comando sia andato a buon fine+if [ ...... ]; then                         # controlla che il comando sia andato a buon fine
     echo     echo
     echo "Errore nella compressione dell'archivio"     echo "Errore nella compressione dell'archivio"
Linea 49: Linea 49:
 ===== Esercizio 2 ===== ===== Esercizio 2 =====
  
-Scrivere uno script bash che prende "k>=2" nomi di file di ingresso e appende i primi "k-1" files nel file passato come ultimo argomento (k-esimo), scrivendo i file in ingresso nell'ordine da destra a sinistra (es. myscript.sh fileA fileB fileC --  fileC conterra' in sequenza prima fileB e poi fileA).+Scrivere uno script bash che prende "k>=2" nomi di file di ingresso e appende i primi "k-1" files nel file passato come ultimo argomento (k-esimo), scrivendo i file in ingresso nell'ordine da destra a sinistra (es. myscript.sh fileA fileB fileC --  fileC conterra' in sequenza prima fileB e poi fileA).\\ 
 +SUGGERIMENTO: creare un array contenente tutti gli argomenti passati allo script.
  
 ===== Esercizio 3 ===== ===== Esercizio 3 =====
Linea 63: Linea 64:
 ===== Esercizio 4 ===== ===== Esercizio 4 =====
  
-Dati i file testuali contenuti in questo tarball, ognuno dei quali contiene per ogni riga due campi separati da spazio ('id valore'). Scrivere uno script bash che legge il campo 'valore' di ogni file e ne calcola media e deviazione standard, quindi stampa sullo standard output una stringa con il seguente formato:\\+Dati i file testuali contenuti in {{informatica:sol:laboratorio20:esercitazionib:results.tgz | questo}} tarball, ognuno dei quali contiene per ogni riga due campi separati da spazio ('id valore'). Scrivere uno script bash che legge il campo 'valore' di ogni file e ne calcola media e deviazione standard, quindi stampa sullo standard output una stringa con il seguente formato:\\
 [nomedelfile senza estensione]  [numero di linee del file] [media] [deviazione standard]. Un esempio di output per i due file test1.dat e test2.dat è: \\ [nomedelfile senza estensione]  [numero di linee del file] [media] [deviazione standard]. Un esempio di output per i due file test1.dat e test2.dat è: \\
 test1    20.18  1.25\\ test1    20.18  1.25\\
 test2    11.20  .81\\ test2    11.20  .81\\
-NOTA: per effettuare i calcoli in floating point usare il comando ''bc'' (esempio: echo "scale=2; sqrt(12)" | bc -q" stampa 3.46)+NOTA: per effettuare i calcoli in floating point usare il comando ''bc'' (esempio: echo "scale=2; sqrt(12)" | bc -q" stampa 3.46, cioe' la radice quadrata di 12 con troncamento a 2 cifre dopo la virgola).
informatica/sol/laboratorio20/esercitazionib/esercitazione6.1584810684.txt.gz · Ultima modifica: 21/03/2020 alle 17:11 (5 anni fa) da Massimo Torquati

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki