在linux中:使用crontab:我测试为:
* * * * * /bin/echo "xin chao">> /home/iloveyou/text.txt
。它工作正常。
但是当我测试运行网址时:
*/3 * * * * /usr/bin/curl -k https://192.169.30.126/joomlandk2/index.php/exportmanager
它不起作用。当我从终端窗口运行:/usr/bin/curl -k https://192.169.30.126/joomlandk2/index.php/exportmanager
时。它运行正常。
为什么?我想用crontab设置运行https://192.169.30.126/joomlandk2/index.php/exportmanager
。你能帮助我吗?感谢。
答案 0 :(得分:1)
可能是一些特殊字符问题。将命令放入包装器脚本,添加运行权限权限并切换crontab指向它。
答案 1 :(得分:1)
在OP请求时,此答案详细说明了如何在crond上下文中逐步复制用户环境。
在crontab中,调用shell脚本。
*/3 * * * * /home/userX/dir/exportmanager.sh
在调用curl之前,在shell,echo或/和set环境中具有与您自己环境类似的条件。
Https使用SSL密钥,curl如何查找此密钥,在哪个证书库?
请参阅--capath
选项。
#!/bin/bash
set VAR=value
/usr/bin/curl -k https://192.169.30.126/joomlandk2/index.php/exportmanager\
>/home/userX/dir/exportmanager.log