
Я хочу, чтобы команда выполнялась как можно дольше и завершалась в определенное абсолютное время (если она все еще выполняется), например:
killat "2018-06-09_23:55" ./myscript.bash
Ресурсы, которые я нашел, касаются завершения процессов по времени относительно времени запуска.
Команда timeout
принимает аргумент для количества секунд, после которых процесс должен быть завершен, но это также относительно времени начала. Одним из решений было бы вычислить разницу между текущим временем и желаемым временем и передать ее в timeout
.
Другой способ — настроить одноразовое cron
задание на выполнение в нужное время, которое будет искать записанный PID и отправлять сигнал на завершение.
Есть ли какие-либо альтернативы этому?