risposta

34

I comandi possono essere eseguiti in modo condizionale utilizzando il modificatore test:. Si specifica un test da eseguire. Se il test restituisce 0, il comando viene eseguito, altrimenti non lo è.

Se l'ultimo comando nel file di configurazione tocca un file e i comandi precedenti che si desidera eseguire solo dopo aver verificato l'esistenza di quel file, tali comandi verranno eseguiti solo la prima volta.

commands: 
    01-do-always: 
    command: run_my_script 
    02-do-on-boot: 
    command: script_to_run_once 
    test: test ! -f .semaphore 
    99-signal-startup-complete: 
    command: touch .semaphore 

In Windows sarebbe qualcosa di simile

commands: 
    01-do-always: 
    command: run_my_script 
    02-do-on-boot: 
    command: script_to_run_once 
    test: if exists c:\\path\\to\\semaphore.txt (exit 0) else (exit 1) 
    99-signal-startup-complete: 
    command: date > c:\\path\\to\\semaphore.txt 
+0

bella soluzione, grazie @Jim! –

+0

Come faresti la stessa cosa ma su un server Windows? Come si differenzia la sintassi? Grazie. – SSED

+0

Aggiornato il post con un esempio di Windows. –

Problemi correlati