将 C++ 程序作为 cronjob 运行时出现问题

Problems running C++ program as cronjob

我在尝试作为 cronjob 运行的 C++ 程序时遇到问题,我一直在尝试各种方法,然后一整天都在网上寻找解决方案。

程序在命令提示符下运行时运行完美,它确实作为 cronjob 运行,但在执行从程序内运行的其他脚本时存在一些问题。

我认为这与无法找到 bash 和 php 这一事实有关,因为我收到以下错误:

/usr/bin/bash: ./hpDownloadFeed.sh: No such file or directory

Could not open input file: mailDifference.php

这些文件在作为 cronjob 运行的 C++ 程序中调用,称为:

* */1 * * * /absolute/path/to/file

C++文件中的文件调用如下:

system("/usr/bin/bash -c ./hpDownloadFeed.sh");

string phpCommand = "/usr/bin/php -f mailDifference.php " + sizeDifference + ' ' + sizeTotal + ' ' + negative ;
    std::system(phpCommand.c_str());

当我这样做时 php/bash 我得到:

/usr/bin/bash and /usr/bin/php

而且在网上有人的建议下,我还在crontab的顶部添加了以下内容。

ATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin

也在我放置的bash/php个文件的顶部

#!/usr/bin/php

#!/usr/bin/bash

非常感谢您的帮助。

提前致谢,

您需要在 C++ 程序中指定 mailDifference.phphpDownloadFeed.sh 的绝对路径。