Debianizzati.Org | Forum | Blog | Guide | IRC
 
 
Forum Italiano Debian - Debianizzati.Org
Dicembre 05, 2008, 04:38:15 am *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Accesso con nome utente, password e durata della sessione
Notizia:
 
   Indice   Aiuto Ricerca Agenda Accedi Registrati  
Pagine: [1]   Vai giù
  Stampa  
Autore Discussione: Ciclo infinito  (Letto 788 volte)
0 utenti e 1 Utente non registrato stanno visualizzando questa discussione.
avezzo
Utente non iscritto
« inserita:: Febbraio 23, 2007, 05:09:59 pm »

Ciao a tutti,
mi trovo con la necessità di fare uno script che, una volta lanciato, resti costantemente attivo nella verifica di una particolare condizione (presenza di un particolare file in una dir).
Una volta trovato il file esegue delle operazioni, rimuove lo stesso file e si rimette di nuovo a verificare l\'arrivo di quel file.
Qualcuno di voi ha mai fatto uno script del genere?
Come mi consigliate di costruire questo ciclo pressocchè infinito?
Grazie per l\'attenzione.
Ciao

Andrea
Registrato
galileo75
Full Member
***

Karma: +3/-1
Scollegato Scollegato

Messaggi: 239



Mostra profilo
« Risposta #1 inserita:: Febbraio 23, 2007, 05:27:33 pm »

Se non ho capito male,

basta che metti un ciclo del tipo:

while (1 != 0)
{
 ...

 test esistenza del tuo file
  se esiste chiama una funzione...

 metti qui una sleep di qualche secondo sleep (10)
}

In bash non ricordo perfettamente la sintassi pero\' basta che consulti qualsiasi libro bash.

ciao
Registrato

There in wine is found the great generalization: all life is fermentation.
Finn
Global Moderator
Hero Member
*****

Karma: +31/-6
Scollegato Scollegato

Messaggi: 1199


207002659
Mostra profilo
« Risposta #2 inserita:: Febbraio 24, 2007, 01:21:40 am »

D\'ho, non avevo visto la risposta in questo thread Tongue
Registrato
UgoBoss
e-zine member
Full Member
*

Karma: +1/-0
Scollegato Scollegato

Messaggi: 139


ug0@hotmail.it
Mostra profilo WWW E-mail
« Risposta #3 inserita:: Maggio 28, 2007, 03:56:05 am »

#!/bin/sh
while($TRUE);
do
if (stat $1 2>/dev/null 1> /dev/null);     ------ Verifica la presenza del file senza mostrare alcun output -----
then
date +"$1 trovato alle %H:%M:%S"     ------ Comando di esempio: ti dice a che ora il file era presente -----
------ Inserisci le azioni da compiere in caso il file sia presente -----
rm $1     ------ Cancella il file ------
fi
sleep 2;     ----- Intervallo tra un controllo e l'altro in secondi -----
done

Ovviamente lo script va lanciato passando come parametro il file da monitorare
Registrato

tindal
Administrator
Hero Member
*****

Karma: +67/-1
Scollegato Scollegato

Messaggi: 2631


Mostra profilo E-mail
« Risposta #4 inserita:: Maggio 28, 2007, 09:30:22 am »

ma invece di avere sleep costantemente attivo, non sarebbe meglio mettere un cronjob?

ciao
tindal
Registrato

Se ci sono molti modi diversi per fare una certa cosa, ed uno di questi ha conseguenze disastrose, di sicuro qualcuno la farà in quel modo.
Pagine: [1]   Vai su
  Stampa  
 
Vai a:  

Altri Topic Correlati
Oggetto Aperta da Risposte Visite Ultimo messaggio
Ciclo infinito Scripting avezzo 1 636 Ultimo messaggio Febbraio 24, 2007, 01:17:05 am
da Finn
ciclo su file Scripting alfreale 4 610 Ultimo messaggio Gennaio 20, 2008, 11:22:07 am
da alfreale
Powered by MySQL Powered by PHP Powered by SMF 1.1.7 | SMF © 2006-2008, Simple Machines LLC XHTML 1.0 valido! CSS valido!
Pagina creata in 0.067 secondi con 20 interrogazioni al database.