30

I was wondering if there was a way to display a notification or something from the command line at a certain time. Like when the clock strikes 4:00pm. It would be nice if it would display it using Ubuntu's notify-osd tool:

enter image description here

Gareth
  • 18,809
Kredns
  • 3,007
  • Do you need to know the exact second you are done with work for the day? – Troggy Sep 09 '09 at 20:04
  • 2
    No. Who gets off at 4:00? I actually need to tell myself to goto bed. – Kredns Sep 09 '09 at 20:09
  • @Lucas Aardvark : LOL. – caliban Sep 09 '09 at 20:20
  • I get off work at 4:00pm.. then again, I get in to work at 7am most days.. – jamuraa Sep 09 '09 at 21:52
  • This is great. I was just asking about something like this at https://askubuntu.com/questions/936645/how-to-make-my-ubuntu-16-04-system-pop-up-a-one-time-to-do-reminder – SDsolar Jul 16 '17 at 10:52
  • Here I am up still at 3:55am. I suppose I should have had this tell me to go to bed at 3. ;-) btw, can you believe you posted this 7 years and 10 months ago? Hello from the Future; July 2017. – SDsolar Jul 16 '17 at 10:55

6 Answers6

46

As many of the other commenters said, the best way to do this on a daily basis is to use cron, but if you are only wanting to do it for one day, or sporadically, you can use the at command:

echo 'notify-send "Work day is done!"' | at 4:00PM 

You can use at in a variety of ways, including as a tea timer:

echo 'notify-send "Get your tea!"' | at now + 3 minutes 
echo 'notify-send "Meeting in 1 hour with the big boss!"' | at 1pm tomorrow 

It's quite useful for those one-off commands.

Check the at manpage for more syntax goodness.

SDsolar
  • 1,626
jamuraa
  • 3,776
15

Use notify-send to send the notification. Set it up as a cron job.

  • 3
    But that doesn't work out of box. notify-send requires some env variables whichr are not available from cron by defaualt? – Kunok Mar 11 '18 at 00:33
12

You can send commands to notify-osd like so:

notify-send "Go to bed!"

A crontab for daily notification at 4pm would look like so:

0 16 * * * /home/username/notify.sh
  • You might need to set DBUS_SESSION_BUS_ADDRESS environment variable before running notify-send. See https://askubuntu.com/a/346580 – Andrej Herich Sep 14 '18 at 11:07
0

if you use a program like anacron (warns you even if the computer is not running so useful more than cron for desktops and notebooks etc ) um then i use Zenity its a notification program here is my site for it with a few examples http://sites.google.com/site/venvirupa/yadandyin

  • 1
    Welcome to Super User. External links can break or be unavailable. Please include the essential information within your answer and use the link for attribution and further reading. Thanks. – fixer1234 Dec 06 '16 at 04:23
0

You can always set up a cron job to run a script @ 0400hrs. The tricky thing here, is to find out what command to use to popup a window (ala net send for windows), or to do anything to notify you to go off to bed.

notify-osd doesn't seem to support command-line prompt generation, you might want to try LinPopup2...

caliban
  • 20,153
-1

Looks like you are using gnome-do. There are a few plugins there that can be used - remember the milk (RTM) is one.

Abhinav
  • 2,050