Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Aiuto per script

  1. #1
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027

    Aiuto per script

    Ciao, avrei bisogno di un aiutino, io sono un po' preso e non ho tempo di studiarmi la cosa, ma forse qualcuno di voi qui ha già risolto il problema e può darmi una mano.

    Sto facendo girare uno script sul mio serverino, questo script ogni tanto crasha, e vorrei che nel caso non fosse in esecuzione venisse rilanciato.

    Avevo pensato di farlo lanciare da un'altro script che ne registrasse il PID e che periodicamente controllasse che il PID fosse ancora attivo, e in caso contrario rifacesse partire lo script... .

    Avete qualche informazione / aiuto da darmi?

    ciao e grazie in anticipo

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    746
    qualcosa di simile ?

    codice:
    #!/bin/bash
    
    while true ; do
    	sleep 5
    	if [ -z "$(ps ax | grep <script>)" ] ; then
    		<script>&		
    	fi
    done
    
    exit 0

  3. #3
    Originariamente inviato da U-bahn
    qualcosa di simile ?

    codice:
    #!/bin/bash
    
    while true ; do
    	sleep 5
    	if [ -z "$(ps ax | grep <script>)" ] ; then
    		<script>&		
    	fi
    done
    
    exit 0
    andare va pero' rompe le palle ogni 5 secondi al pc senza motivo...
    così facendo finche' il programma/script da controllare non esce lo script non fa nulla...
    quando esce ti inserisce in un file log.txt exitcode e data in cui è successo...

    codice:
    #!/bin/bash
    
    while :
    do
    
            <avvio script>
            echo "Exit code $?  in `date`" >> log.txt;
    
    done
    
    exit 0

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    grazie a tutti e due, una domanda per neon, la tua è un'integrazione?

    Perchè ho capito il funzionamento dello script di U-bahn, e in effetti testa l'esistenza del pid ogni 5 secondi ( e potrebbe essere un carico evitabile) altrimenti avvia lo script.

    Grazie

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    746
    ( e potrebbe essere un carico evitabile)
    uh ? carico ? evitabile ? state scherzando, vero ?

    comunque sì, la soluzione di Neon87 è sicuramente più elegante


  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da U-bahn
    uh ? carico ? evitabile ? state scherzando, vero ?

    comunque sì, la soluzione di Neon87 è sicuramente più elegante

    si mi rendo conto che non è un carico vero e proprio...

    non avete risposto alla mia domanda però...

    La soluzione di Neon87 è un integrazione o posso usarla così com'è ( a parte la sostituzione del comando di avvio ovviamente...)?

    ciao e grazie ancora

  7. #7
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da gianiaz
    si mi rendo conto che non è un carico vero e proprio...

    non avete risposto alla mia domanda però...

    La soluzione di Neon87 è un integrazione o posso usarla così com'è ( a parte la sostituzione del comando di avvio ovviamente...)?

    ciao e grazie ancora
    credo di aver capito ...

  8. #8
    sostituisci e via...

    unica pecca è che per killare il processo dello script principale devi farlo a mano perche' il ciclo while è infinito

  9. #9
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    si infatti il problema è quello...

    In pratica lo script che lancio è uno script python che fa delle richieste a una serie di siti.

    Lo script tiene memoria del sito a cui è arrivato, e se crasha ricomincia da dove era arrivato.

    Il problema è che quando questa lista finisce se lancio lo script in questo modo ricomincia da zero... credo che faro in modo che lo script crei un file di lock quando ha finito, e nel while che mi hai dato metterò un test di esistenza del file di lock.

    Comunque è stato un buon spunto da cui partire, grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.