|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Sep 2010
Messaggi: 61
|
[Raspbian] [BASH] [PHP] Problema di timeout
Ciao a tutti,
Ho necessità di impostare un timeout a un comando eseguito tramite script in bash, il comando è molto semplice: php /percorso/file/da/eseguire.php Avrei necessità di impostare un timeout all'esecuzione del comando, cioè se dopo 30 secondi è ancora in esecuzione lo devo killare. Il comando risulta in esecuzione se digito "ps aux" probabilmente esiste il modo per verificare se è in esecuzione e killarlo, purtroppo non ho trovato molto. Spero qualcuno possa darmi qualche dritta su come procedere. Grazie mille in anticipo ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
timeout dovrebbe fare al caso tuo.
Comando che resta in esecuzione per 50 secondi (sleep 50) con timeout di 30 secondi:
Codice:
gimli@sertan ~ $ timeout -k 30.0s 30.0s sleep 50 gimli@sertan ~ $ echo $? 124 gimli@sertan ~ $ time timeout -k 30.0s 30.0s sleep 50 real 0m30.001s user 0m0.000s sys 0m0.000s
Codice:
gimli@sertan ~ $ timeout -k 30.0s 30.0s sleep 10 gimli@sertan ~ $ echo $? 0
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Sep 2010
Messaggi: 61
|
Grazie,
Il comando sembra perfetto, sarebbe ciò che fa al caso mio. Purtroppo quando vado a implementarlo in uno script suppongo gli manchino i permessi per killare il processo e non fa nulla. Eseguendo i comandi da terminale invece funziona tutto. Sai come posso risolvere? Ci ho provato con il risultato di fare un po' di casino senza capire realmente cosa fare. Lo script è eseguito con privilegi di root. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Non sapendo come sia fatto lo script di lancio né come sia eseguito (cron? anacron? init? altro?) ipotizzo che non abbia il path del comando corretto, non credo non abbia il diritto di agire.
Non sapendo neppure cosa faccia lo script php, potrebbe essere lui a fallire, forse per problemi di path o variabili di ambiente o perché ha la luna storta.
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:38.