увольнение задания крона, но команда является усеченным после '\'

У меня есть сервер Ubuntu 16.04, который я пытаюсь автоматически сделать сном и следом каждую ночь и утро.

Я добавил следующую команду к заданию крона, которое запускает без 5 минут полночь каждый день:

/usr/sbin/rtcwake -m mem -l -t $(date +\%s -d 'tomorrow 07:20')

(Я делаю его таким образом, потому что я хотел бы, чтобы задание было легко понятно - использование секунд - который работал - не так легко понятно.)

Это "работает", но перестало работать. Системный журнал сообщает что команда cron испытанное выполнение:

/usr/sbin/rtcwake -m mem -l -t $(date +\

Другими словами, cron кажется, усекает эту часть:

%s -d 'tomorrow 07:20')

Я должен упомянуть, что, когда я выполняю полную команду в окне терминала, она сразу помещает компьютер для сна (и она просыпается правильно следующим утром, также). Это только имеет проблему при выполнении как a cron задание.

2
задан 7 March 2018 в 14:51

1 ответ

команда крона вводилась с помощью wemin

webmin заботится о специальных символах в командах крона, можно ввести их как в командную строку, никакая потребность выйти из них как Вы не должна делать при редактировании crontab непосредственно.

в этом случае % специального символа крона маскируется автоматически как \%. Вы вошли \% в webmin, который затем маскируется как \\%.

/usr/sbin/rtcwake мадам-m-l-t $ (дата + %s-d 'завтра 7:20')

должен работать в webmin и командной строке

BTW: \% на командной строке совпадает с %, это, почему Ваша команда работает в обеих версиях над командной строкой

0
ответ дан 2 December 2019 в 07:57

Другие вопросы по тегам:

Похожие вопросы: