Repository 32bit  Forum
Repository 64bit  Wiki

Poche righe per script banale

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata e la versione del Kernel. Questi dati aiutano le persone che possono rispondere.
2) Specificare sempre il tipo di shell (bash, sh, csh, etc...)
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza dell'ultima regola porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Re: Poche righe per script banale

Messaggioda legionario » lun giu 30, 2008 22:57

d4z_c0nf ha scritto:Grazie ad entrambi ora ho capito.

L'unico problema è che non riesco a usare /usr/bin/time su una funzione dello script.
La soluzione più facile diventa dividere lo script in due file, uno che monta e smonta N volte e l'altro che calcola il tempo di esecuzione del primo.
Se nessuno ha idee e se ti interessa lo stesso (legionario) ti posto i due script.

rock


Si' grazie!! Mi faresti una cortesia. Cosi' do un'occhiata anche a questo modo di operare...

A presto
Avatar utente
legionario
Linux 2.6
Linux 2.6
 
Messaggi: 603
Iscritto il: mer dic 08, 2004 1:00
Località: Bergamo - Roma

Re: Poche righe per script banale

Messaggioda d4z_c0nf » mar lug 01, 2008 0:27

legionario ha scritto:
d4z_c0nf ha scritto:Grazie ad entrambi ora ho capito.

L'unico problema è che non riesco a usare /usr/bin/time su una funzione dello script.
La soluzione più facile diventa dividere lo script in due file, uno che monta e smonta N volte e l'altro che calcola il tempo di esecuzione del primo.
Se nessuno ha idee e se ti interessa lo stesso (legionario) ti posto i due script.

rock


Si' grazie!! Mi faresti una cortesia. Cosi' do un'occhiata anche a questo modo di operare...

A presto


Ciao scusa il ritardo..

allora
prendi i due codici e li metti nella stessa directory

il principale è questo
Codice: Seleziona tutto
#!/bin/bash


TIME_TOTAL=`/usr/bin/time 2>&1 ./imount`

#qui estrapolo il time elapsed dalla stringa prodotta dal comando precedente, se nn sei esperto guardati il comando
#grep e le espressioni regolai
TIME_ELAPSED=`echo $TIME_TOTAL | grep -Eo "[0-9]{1,2}:[0-9]{2}.[0-9]{2}elapsed" | grep -Eo "[0-9]{1,2}:[0-9]{2}.[0-9]{2}"`

#tramite il comando cut divido la stringa in minuti e secondi
MIN=`echo $TIME_ELAPSED | cut -d ":" -f 1`
SEC=`echo $TIME_ELAPSED | cut -d ":" -f 2`

echo " tempo impiegato per l'esecuzione: $MIN minuti e $SEC secondi "


che chiama quest'altro script
imount
Codice: Seleziona tutto
#!/bin/bash

MOUNTP=/mnt/prova
PERIF=/dev/sda1
N=10

if [[ ! -d $MOUNTP ]]; then
           mkdir $MOUNTP
fi

for i in $(seq 1 $N); do
   mount $PERIF $MOUNTP
   umount $PERIF
done

rmdir $MOUNTP
Avatar utente
d4z_c0nf
Packager
Packager
 
Messaggi: 1266
Iscritto il: mar mar 14, 2006 19:07
Località: Salerno
Nome Cognome: Rocco Aliberti
Slackware: current64
Kernel: 3.2.13
Desktop: awesome 3.4.11

Re: Poche righe per script banale

Messaggioda legionario » mar lug 01, 2008 10:16

Grazie caro! Cosi' mi hai dato pure lo spunto per studiarmi le espressioni regolari... ;)

Buona giornata
Avatar utente
legionario
Linux 2.6
Linux 2.6
 
Messaggi: 603
Iscritto il: mer dic 08, 2004 1:00
Località: Bergamo - Roma

Re: Poche righe per script banale

Messaggioda d4z_c0nf » mar lug 01, 2008 10:31

legionario ha scritto:Grazie caro! Cosi' mi hai dato pure lo spunto per studiarmi le espressioni regolari... ;)

Buona giornata


Figurati ;)
Buona giornata anche a te.

rock
Avatar utente
d4z_c0nf
Packager
Packager
 
Messaggi: 1266
Iscritto il: mar mar 14, 2006 19:07
Località: Salerno
Nome Cognome: Rocco Aliberti
Slackware: current64
Kernel: 3.2.13
Desktop: awesome 3.4.11

Precedente

Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite