Intereting Posts

crontab устанавливает пользовательскую переменную, перенаправляет вывод и обнаруживает подключенную сеть

У меня три проблемы, все они касаются crontab.

  1. Могу ли я получить доступ к переменной $HOME в crontab? например, используйте $HOME следующим образом: PATH=$HOME/bin:$HOME/scripts:$PATH ? или * * * * * echo "test" > $HOME/test.txt ?

  2. Я хочу, чтобы crontab перенаправлял нормальный stdout в /dev/null , но почтовый stderr для пользователя. Например, когда компьютер не подключен к сети, запись в crontab like * 2 * * * getmail -n -q ... вернет ошибку, поэтому crontab отправит электронное письмо пользователю с этой ошибкой.

  3. основанный на верхнем примере, getmail позволит почтовому пользователю crontab, когда система не подключена к сети, поэтому я хочу, чтобы метод обнаружил, подключен ли пользователь к сети.

Об этом методе обнаружения, он должен был ревет:

  1. быстро

  2. просто

  3. легко сочетается с другими заданиями crontab (например, управление использованием: &&, ||, | и т. д.)

  1. конечно
  2. * 2 * * * getmail -n -q ... > /dev/null

если вы хотите перенаправить как stdout, так и stderr, тогда ... 2>&1 > /dev/null