Cron job cannot run the command

Hi,

I created this cron job for asterisk to send sms daily to a number

#!/bin/sh
#custom mod - send sms once a day, at 07:00.
CRON_PATH="/etc/asterisk/gw/crontabs_root";
if ! grep 'gsm send sms' $CRON_PATH > /dev/null 2>&1 ;then
        echo "* 7 * * * asterisk -rx 'gsm send sms 1 7666 "TM ON"'" >> $CRON_PATH
        fi

but the result when i do crontab -l :

* 7 * * * asterisk -rx 'gsm send sms 1 7666 TM ON'

it should be:

* 7 * * * asterisk -rx 'gsm send sms 1 7666 "TM ON"'

So I only received sms: TM

Please help me to correct this, I should receive it as TM ON

Thanks :slight_smile:

Try:

echo "* 7 * * * asterisk -rx 'gsm send sms 1 7666 \"TM ON\"'" >> $CRON_PATH
1 Like

Hi Don Cragun!

Thank you so much for your answer. But how if i want 2 cron job? should it be like this:

#!/bin/sh
#custom mod - send sms once a day, at 07:00.
CRON_PATH="/etc/asterisk/gw/crontabs_root";
if ! grep 'gsm send sms' $CRON_PATH > /dev/null 2>&1 ;then
       echo "* 7 * * * asterisk -rx 'gsm send sms 1 7666 \"TM ON\"'" >> $CRON_PATH
       echo "* 7 * * * asterisk -rx 'gsm send sms 3 7666 \"TM ON\"'" >> $CRON_PATH
        fi

Thanks!

It looks reasonable, what happens when you try it (after removing the line you already added)?

It does what I want:

# crontab -l 
* 7 * * * asterisk -rx 'gsm send sms 1 7666 "TM ON"'
* 7 * * * asterisk -rx 'gsm send sms 3 7666 "TM ON"'

Thanks! :slight_smile: