使用 Crontab 调度脚本 - SIGABRT 内部错误



我写了一个包含phantomjs的Shell脚本,现在我希望它每天在特定时间运行。我使用了 crontab,并编辑了调用后得到的文件

crontab -e

以包括

56 13 * * * /home/lena/Str8ts_Project/str8ts2.bash

如果我手动运行脚本,它可以正常工作,但是一旦计划了脚本,我就会收到一条 Ubuntu 错误消息,标题为 phantomjs 在 GI_raise(( 中与 SIGABRT 一起崩溃

所以显然 phantomjs 有问题,但我不知道它可能是什么。

我在联想ThinkPad上运行带有Xfce的Ubuntu 16.04。

谢谢你的帮助。

编辑:str8ts2.bash的代码

!/bin/bash
### Create Image
phantomjs str8ts.js
### Crop and keep big image
#convert file_name.png -crop 414x419+318+712 cropped.png
###  Crop and discard big image
mogrify -crop 414x419+318+712 *.png
### change to directory for files and move png there
cd Str8tsFiles 
mv /home/lena/Str8ts_Project/*.png .

以及单独的 phantomjs 文件 str8ts.js在开头调用

var currentTime = new Date();
currentTime = currentTime.toDateString();
currentTime = currentTime.replace(/s+/g, '_');
var file_name = currentTime + "str8ts.png";
var page = require('webpage').create();
page.open('http://www.str8ts.de/', function() {
   page.render(file_name);
   phantom.exit();
});

尝试以下操作:

使用which查找默认bash位置

which bash

这将告诉您bash的位置,例如 /bin/bash

将要bash的完整路径名调用添加到 crontab 条目中(另请注意-c(

56 13 * * * /bin/bash -c /home/lena/Str8ts_Project/str8ts2.bash

我们只是想消除crontab条目中bash(或不的问题。

相关内容

  • 没有找到相关文章

最新更新