Как мне передать скрипт Python в утилиту уведомления-отправки? [dубликат]

Я хочу использовать команду notify-send и отображать текст из файла в качестве уведомления, чтобы я мог редактировать этот файл только для изменения команды или пересылки содержимого с выходов других программ на notify-send.

] Я попытался:

notify-send -u critical -t 3000 < ~/ved cat ved | notify-send -u critical -t 3000

В нем говорится: No summary specified.

Что мне делать с этим резюме?

4
задан 13 November 2012 в 00:45

6 ответов

Я не уверен, что вы хотите сделать или какой файл вы хотите отобразить, но man notify-send говорит

notify-send [OPTIONS] <summary> [body]

Сводка - это заголовок, например, базовое имя вашего файла.

Итак, что вы можете сделать, это

notify-send -u critical -t 3000 "$(basename ~/ved)" "$(cat ~/ved)"

Но имейте в виду, что notify-send не печатает длинный текстовый файл, это не его работа.

Кроме того, я не знаю, для вас или всех остальных, но опция -t никогда не работала для меня, время было всегда 10 секунд. Я читал, что это была ошибка давно, и она все еще не работает в 12.04.

7
ответ дан 18 July 2018 в 01:25

Я не уверен, что вы хотите сделать или какой файл вы хотите отобразить, но man notify-send говорит

notify-send [OPTIONS] <summary> [body]

Сводка - это заголовок, например, базовое имя вашего файла.

Итак, что вы можете сделать, это

notify-send -u critical -t 3000 "$(basename ~/ved)" "$(cat ~/ved)"

Но имейте в виду, что notify-send не печатает длинный текстовый файл, это не его работа.

Кроме того, я не знаю, для вас или всех остальных, но опция -t никогда не работала для меня, время было всегда 10 секунд. Я читал, что это была ошибка давно, и она все еще не работает в 12.04.

7
ответ дан 24 July 2018 в 17:23

Попробуйте следующее:

notify-send -u critical -t 3000 "$(cat ~/ved)"
-1
ответ дан 18 July 2018 в 01:25

http://www.commandlinefu.com/commands/view/4460/pipe-output-to-notify-send

говорит

echo 'information overlord' | while read OUTPUT; do notify-send "$OUTPUT"; done
9
ответ дан 18 July 2018 в 01:25

Попробуйте следующее:

notify-send -u critical -t 3000 "$(cat ~/ved)"
-1
ответ дан 24 July 2018 в 17:23
  • 1
    Без надлежащего резюме он будет рассматривать его как заголовок и не сломает линии. – user55822 13 November 2012 в 01:21

http://www.commandlinefu.com/commands/view/4460/pipe-output-to-notify-send

говорит

echo 'information overlord' | while read OUTPUT; do notify-send "$OUTPUT"; done
9
ответ дан 24 July 2018 в 17:23
  • 1
    Можно также переслать stderr для уведомления-osd. Вот пример: git ls-remote "https://bitbucket.org/$username/$reponame.git" 2>&1 1>/dev/null | while read OUTPUT; do notify-send "error" "$OUTPUT" -i gtk-error; done – Khurshid Alam 8 January 2014 в 18:07
  • 2
    Благодарю. Я добавил это к своему ~/.bash_aliases: function notify { while read input; do notify-send "message" "$input"; done; }. – TRiG 31 March 2015 в 01:27

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

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