trap
только для сигналов, которые определяются в signal(7)
. Не нахождение команды является просто отказом в exec
семейство функций, которые возвратятся -1
, не отправляют сигнал.Лучший способ поймать несуществующие команды состоял бы в том, чтобы сделать что-то вроде этого.
if ! type "$command" >/dev/null 2>&1; then
echo "Try again, wrong command" 1>&2 # should output to stderr, not stdout
else
"$command"
fi
] Для этого можно использовать [] Rundeck[]. Это автономный Java-процесс, доступ к которому можно получить через веб-браузер. Администратор может указать задания, которые будут запускать либо команду, либо скрипт. Затем пользователь может запустить задание (опционально с параметрами). [
] [] Выход будет отправлен обратно в браузер. Также ведётся регистрация выполненных в прошлом заданий.[
] []Вот снимок экрана из руководства, использующего задания: [][
] []Редактирование заданий:[
] [][][
]] Я использую [] AjaxTerm[] - это веб-терминал, доступ к которому можно получить через веб-браузер.[
] [] [][
]http://github.com/hughperkins/securewebcmd - это еще одна возможность (отказ от ответственности: я написал и поддерживаю ее).