Как отправить уведомление с помощью команды?
У меня есть скрипт bash, который запускается периодически один раз в день, используя crontab,
Скрипт проверяет условие, и если оно истинно, он должен выдать at command в определенное время.
at 14:10 <notify-send hello>
Вопрос в том, как добавить конкретную команду, например notify-send к at команда?
2 ответа
echo "notify-send 'hello'" | at 14:10
at ожидает команды от STDIN.
Если вы хотите заставить замолчать /bin/sh предупреждение, запустите это так:
echo "notify-send 'hello'" | at 14:10 2>/dev/null
Поскольку я искал быстрый способ напомнить себе с помощью dunstify/notify-send, я хочу продвигать комментарий @Ruslan , потому что он требует меньшего набора текста (что важно, когда вы хотите «просто установить таймер»)
at now + 3minutes <<< "notify-send -t 0 'tee is ready'"
... или с меньшим количеством пробелов/символов:
at now+3min<<<'notify-send -t 0 tee isready'
-
-t 0не отключайте уведомление и держите его открытым
и просто для информации: как улучшение
atqили же
at -lВ листинге я использую псевдоним, который также печатает выполняемую команду, а не только время/очередь/пользователя:
alias ,atl='for j in $(atq | sort -k6,6 -k3,3M -k4,4 -k5,5 |cut -f 1); do atq |grep -P "^$j\t" ;at -c "$j" | tail -n 2; done'
( как упоминалось здесь в сбое сервера )
* протестировано с Manjaro21/Debian10