我正在尝试使用at
.
基本上,我想在将来的某个时候发送短信。
这是我发送短信的命令:
php -r 'include_once("/home/eamorr/open/open.ie/www/newsite/ajax/constants.php");sendCentralSMS("08574930418","hi");'
Run Code Online (Sandbox Code Playgroud)
以上效果很好!我在几秒钟内收到我的短信。
现在,我at
将来如何才能运行此命令?
我试过
php -r 'include_once("/home/eamorr/open/open.ie/www/newsite/ajax/constants.php");sendCentralSMS("08574930418","hi");' | at now + 2 minutes
Run Code Online (Sandbox Code Playgroud)
但这立即发送了我的命令!我想在2分钟内发送消息!
Bra*_*ley 12
因为这不是at
命令的工作方式。at
通过 STDIN 接收命令。您在上面所做的是运行脚本并将其输出(如果有)提供给at
.
这与您正在做的功能等效:
echo hey | at now + 1 minute
Run Code Online (Sandbox Code Playgroud)
由于echo hey
仅打印出“嘿”这个词,因此我at
将在未来一分钟内执行“嘿”这个词。您可能想要回显完整的php
命令at
而不是自己运行它。在我的例子中:
echo "echo hey" | at now + 1 minute
Run Code Online (Sandbox Code Playgroud)
编辑:
正如@Gnouc 指出的那样,您的 at 规范中也有错字。您必须说“现在”,以便它知道您要增加 1 分钟的时间。