Ich möchte eine Bash EXIT
Trap und Verwendung exec
verwenden, um zu vermeiden, einen neuen Prozess zu erzeugen. Ist das möglich?Wie kann ich bash EXIT Trap erreichen, wenn ich eine andere Binärdatei ausführe?
Das heißt,
#!/bin/bash
touch $0.$$
trap "rm -v $0.$$" EXIT
/bin/echo Hello
entfernt die temporäre Datei $0.$$
EXIT
Falle der Verwendung von bash während
#!/bin/bash
touch $0.$$
trap "rm -v $0.$$" EXIT
exec /bin/echo Hello
nie "Feuer" die Falle (keine Meldung von rm
, Datei $0.$$
nach Abschluss vorhanden ist).
Es macht natürlich Sinn, dass die Falle nicht feuern kann, da bash nach der exec
nicht mehr die Kontrolle hat. Gibt es einen Weg, es zum Laufen zu bringen und Gebrauch exec
? Dies ist zugegebenermaßen mehr aus Neugier als aus praktischen Gründen.