spina ha scritto:Io la trap la uso spesso per catturare il SIGTERM negli script che generano file temporanei in modo che in ogni caso mi assicuro di eliminare questi file prima di terminare l'esecuzione.
è in pratica quel che devo fare
vedi
postfix non compila più sulla 13.1, perché mysql ha adesso un include con lo stesso nome di un file di postfix.
Devo quindi rinominare un include di mysql prima di compilare e poi ripristinarlo
Posso benissimo fare con la soluzione "make || restore", ma a questo punto mi piaceva trovare una soluzione più generale, in modo che in casi analoghi, ma in cui devo fare la stessa cosa per più comandi non debba fare tanti ||
e trap sembra la cosa giusta, all'uscita (per errore o per fine script) esegue la funzione indicata
per esempio
- Codice: Seleziona tutto
restore_mysql(){
mv files.old files.h
}
trap restore_mysql EXIT
però ammetto che tutto è frutto di una lettura veloce ieri e di alcune prove
ho visto che questo prende anche il caso in cui faccio ctrl+c durante il make, anche se ho visto che ci sarebbero altre "uscite" da poter catturare, come INT e TERM