6

Am trying to create a cron job to open a web page at a scheduled time.

I have edited my cron using crontab -e and append my job. I wrote my job in a script like this: xdg-open (URL) I saved this script in my /home/flicker directory.

However, when I edit my cron (crontab -e), it saves the file as /tmp/crontab.tIzXBv/crontab.

After saving it successfully says installing new crontab.

I made my file script executable, but still failing to handle the job. I wanted the script to run at 14:30PM, so I added this line to my crontab:

30 14 * * * /home/flicker/open-web.sh

This is still failing to work please help. Here is my script below:

#!/bin/bash
xdg-open https://www.google.com
David Foerster
  • 36,264
  • 56
  • 94
  • 147

1 Answers1

12

to execute a bash script via cron i would use

30 14 * * * /bin/bash /home/flicker/open-web.sh >/dev/null 2>&1

To call a web page/URL via cron & curl

30 14 * * * /usr/bin/curl  http://funkyname.com/blub.html >/dev/null 2>&1

Update:

After realizing you want to open an actual browser and NOT just calling a script - i guess i understood your case.

You can solve that without bash script - instead write all logic directly to your crontab.

for Chrome:

30 14 * * * export DISPLAY=:0 && google-chrome --new-window http://www.randomurl.com

for Firefox:

30 14 * * * export DISPLAY=:0 && firefox --new-window http://www.randomurl.com

Keep in mind:

The --new-window parameter is forcing the browser in charge to open a new window, if you don't want that, just remove that section.

To avoid noise output you can optional add >/dev/null 2>&1 at the end of your cron entry.

dufte
  • 13,272
  • 5
  • 39
  • 43
  • thank you so much for your suggestions, unfortunately it didn't work still. – Mercy Flicker Jun 02 '16 at 14:45
  • 1
    updated my post, tested it - is working now – dufte Jun 03 '16 at 06:00
  • Wow! wow! @dufte, thanks alot, your update answer, it has worked, thanks alot – Mercy Flicker Jun 14 '16 at 09:39
  • 1
    Glad to hear it finally worked out for you – dufte Jun 14 '16 at 09:58
  • 1
    when removing the --new-window firefox fails to open because is already running... I would like to open in a new tab. It works fine if called directly on terminal, but not as cron job. Firefox message: Firefox is already running, but is not responding. To use Firefox, you must first close the existing Firefox process, restart your device, or use a different profile. – Gabriel Alejandro López López Sep 08 '22 at 23:25