Как я могу добиться прерывания bash EXIT при выполнении другого бинарного файла?
Я хотел бы использовать БашEXIT
ловушкаа также использованиеexec
чтобы избежать порождения нового процесса. Это возможно?
То есть,
#!/bin/bash
touch $0.$
trap "rm -v $0.$" EXIT
/bin/echo Hello
удаляет временный файл$0.$$
используя БашEXIT
в то время как ловушка
#!/bin/bash
touch $0.$
trap "rm -v $0.$" EXIT
exec /bin/echo Hello
никогда не "срабатывает" ловушка (нет сообщений отrm
, файл$0.$$
существует после завершения).
Это, конечно, имеет смысл, что ловушка не может срабатывать, поскольку bash больше не контролирует послеexec
, Есть ли способ заставить это работатьа также использованиеexec
? По общему признанию, это из любопытства больше, чем практические вопросы.