Как программно установить MAILTO в crontab?

Как программно установить MAILTO в crontab?

24.01.2020 04:56:16 Просмотров 25 Источник

В настоящее время я создаю свой crontab программно следующим образом:

echo "* * * * * run_some_job" | crontab -

Кроме того, я хочу программно установить MAILTO

У вопроса есть решение - Посмотреть?

Ответы - Как программно установить MAILTO в crontab? / How do you set MAILTO in crontab programmatically?

Является ответом!
SKi

24.01.2020 05:28:35

crontab может принимать многострочный ввод. Итак, приведем две строчки, например так:

> (echo "MAILTO=xxx@yyy.org"; echo "* * * * * run_some_job") | crontab -

> crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (- installed on Fri Jan 24 16:26:20 2020)
# (Cronie version 4.2)
MAILTO=xxx@yyy.org
* * * * * run_some_job

И программно (из-за unix-tag, пример C):

#include <stdio.h>

void main()
{
    FILE* file = popen("/usr/bin/crontab -", "w");
    if (file)
    {
       fprintf(file, "MAILTO=xxx@yyy.org\n");
       fprintf(file, "10 11 * * * run_some_job\n");
       pclose(file);
    }
}

результат:

> gcc main.c
> ./a.out 
> crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (- installed on Fri Jan 24 16:35:03 2020)
# (Cronie version 4.2)
MAILTO=xxx@yyy.org
10 11 * * * run_some_job
Закрыть X