Skip Navigation

Using bash & cron to chime at specific times - "guide"

I made a little script to get to grips with cron and to try to make my time management better :

If you want music to play, use ffmpeg/ffplay. If you want notifications, use notify-send. If you want neither, what are you doing reading this?

Save the following to chime.sh or whatever you want to call this

 
    
#! /bin/bash
# replace 1000 with your user id , run $ id -u to find out. this is to allow audio to play
export XDG_RUNTIME_DIR="/run/user/1000"
# checks what minute it is past the hour to play specific chime
case $(date +"%M") in
        15|30|45) ffplay -autoexit -nodisp /path/to/your/chime.mp3
        notify-send "BONG";;
        00) ffplay -autoexit -nodisp /path/to/your/hourly/chime.mp3
        notify-send "HOUR";;
        *) notify-send $(date +"%M");;
esac



  

run

 
        chmod +x chime.sh


  

Or whatever you called the file.

run

 
        crontab -e 


  

to open/config cron

Add

 
        */15 * * * * /path/to/your/chime.sh


  

This triggers the cron job every 15 mins. you can adjust the timings on both the cron config and the shell script to adjust how often you want chimes to go off.

Comments

0