| Summary: | Add shell-tmpdir or something | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Sir Raorn <raorn> |
| Component: | libshell | Assignee: | Alexey Gladkov <legion> |
| Status: | CLOSED WONTFIX | QA Contact: | qa-sisyphus |
| Severity: | enhancement | ||
| Priority: | P2 | CC: | glebfm, legion, mike, vvk |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
Можно поподробнее про желаемый функционал ?
Потому что то ты хочешь можно реализовать так:
. shell-signal
workdir="$(mktemp -dt "$PROG.XXXXXXXXXX")"
exit_function() {
rm -rf -- "$workdir";
exit "$1";
}
set_cleanup_handler exit_function
Да, действительно. P.S. А мне обязательно использовать exit в своей exit_function? В gear, на мой взгляд, это приятнее сделано. (В ответ на комментарий №2) > P.S. А мне обязательно использовать exit в своей exit_function? Разумеется имя функции может быть произвольным. > В gear, на мой взгляд, это приятнее сделано. Единственное различие в названии: install_cleanup_handler -> set_cleanup_handler Что именно тебе кажется более удобным в gear? Всё, вижу по коду. То же самое, просто меня немного смутил exit "$1" в "моей" exit_function(). (In reply to comment #1) > Потому что то ты хочешь можно реализовать так: Вот это мож и в библиотеку? (В ответ на комментарий №5)
> Вот это мож и в библиотеку?
Ты знаешь сколько ещё можно таких примитивов написать ?
Эта функция учитывает большинство проблем при создании обработчиков сигналов. Хотя мне больше нравится signal_handler(). Она позволяет создание множественных обработчиков.
|
В пакете qa-robot есть замечательный файл /usr/bin/tmpdir.sh: $ perldoc /usr/bin/tmpdir.sh NAME tmpdir.sh - manage $TMPDIR SYNOPSIS #!/bin/sh . tmpdir.sh DESCRIPTION When sourced, this script provides private $TMPDIR, which will be purged upon exit. Хотелось бы видеть в libshell нечто подобное.