6

I want to use command notify-send and display text from a file as a notification so that I can only edit that file to change command or forward contents from outputs of other programs to notify-send.

I tried :

  • notify-send -u critical -t 3000 < ~/ved

  • cat ved | notify-send -u critical -t 3000

It says : No summary specified.

What should I do about this summary?

3 Answers 3

15

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

says

echo 'information overlord' | while read OUTPUT; do notify-send "$OUTPUT"; done
2
  • One can also only forward the stderr to notify-osd. Here is an example: 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 Jan 8, 2014 at 12:07
  • Thanks. I added this to my ~/.bash_aliases: function notify { while read input; do notify-send "message" "$input"; done; }.
    – TRiG
    Mar 30, 2015 at 22:27
9

Im not sure what you want to do or what kind of file you want to display but man notify-send says

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

Summary being a title, so for example, the basename of your file.

So what you can do is

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

But be aware that notify-send won't print long text file, it's not its job.

Also, I don't know for you or everyone else, but the -t option never worked for me, time being always 10s. I've read it was a bug a long time ago and it's still not working in 12.04.

-1

Try this:

notify-send -u critical -t 3000 "$(cat ~/ved)"
1
  • 2
    Without a proper summary, it will consider it as a title and will not break lines.
    – user55822
    Nov 12, 2012 at 19:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.