0

我有一个简单的 ruby​​ 脚本,它会在一定时间后发送邮件,这是我的代码:

#!/usr/bin/env ruby
system("at now + 1 day <<END
echo 'This is test message from xyz' | mail -s 'Test message' someone@example.com
END")

每当我运行这个脚本时,我都会得到

sh:END:未找到

编辑 1

如果我在单行上使用

system("at now + 1 min echo 'This is test message from xyz' | mail -s 'Test message' someone@example.com")

它给出了错误:

语法错误。最后看到的令牌:e

乱码时间

这做错了什么?

4

1 回答 1

4

单线at形式可以是echo 'COMMAND' | at WHEN.

你可以试试这个:

system("echo \"echo 'This is test message from xyz' | mail -s 'Test message' someone@example.com\" | at now + 1 day")
于 2016-05-31T11:45:30.737 回答