I'm trying to perform a one-liner using at.Basically, I want to send an SMS at some point in the future.Here's my command to send an SMS:php -r 'include_once(/home/eamorr/open/open.ie/www/newsite/ajax/constants.php);sendCentralSMS(08574930418,hi);'The above works great! I receive my sms in a couple of seconds.Now, how can I get at to run this command in future?I tried php -r 'include_once(/home/eamorr/open/open.ie/www/newsite/ajax/constants.php);sendCentralSMS(08574930418,hi);' | at now + 2 minutesBut this sends my command immediately! I want to send the message in 2 minutes' time!
Run at command in two minutes time
at
Because that's not how the at command works. at takes the command in via STDIN. What you're doing above is running the script and giving its output (if there is any) to at.This is the functional equivalent of what you're doing:echo hey | at now + 1 minuteSince echo hey prints out just the word hey the word hey is all I'm giving at to execute one minute in the future. You probably want to echo the full php command to at instead of running it yourself. In my example:echo echo hey | at now + 1 minuteEDIT:As @Gnouc pointed out, you also had a typo  in your at spec. You have to say now so it knows what time you're adding 1 minute to.