【发布时间】:2013-09-21 03:10:31
【问题描述】:
这是一个冗长的标题。但它解释了我的问题:
我有一个运行 perl 脚本的 crontab。
该 perl 脚本运行一个 cap 任务,它向 STDOUT 输出一些状态消息。
perl 脚本应该从 cap 中捕获 STDOUT(当前使用反引号)并对其进行解析。
现在,当我从 bash 用户运行脚本时,这可以 100% 正常工作。但是,当我从 crontab 运行脚本时,perl 脚本不会捕获 cap 任务的任何输出。
以前有没有人处理过这样的事情?谢谢。
【问题讨论】:
-
您确定 perl 正在 crontab 中运行吗?通常它会使用与 cron 不同的环境并丢失 perl exe 或一些 perl lib 设置
-
感谢您的回复。我实际上确信 perl 正在 crontab 中运行。我的日志文件被创建,所有相同的行都被写入......只是不是 $check_result = 'results to parse',而是打印 $check_result = ''
-
您如何运行
cap任务?您可能会在 STDERR 中收到更多错误消息。请参阅此内容以在 cron stackoverflow.com/questions/1308484/… 中获取 STDERR -
反引号在 cron 作业中工作得非常好。您尚未确定一个关键因素。
-
你能解释一下你的意思我还没有确定一个关键因素吗?
标签: perl bash shell cron capistrano