Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 在shell中创建用户cron时出错_Linux_Bash_Shell_Cron - Fatal编程技术网

Linux 在shell中创建用户cron时出错

Linux 在shell中创建用户cron时出错,linux,bash,shell,cron,Linux,Bash,Shell,Cron,我正在使用shell脚本部署我的服务器。我有一句话: crontab -l | { cat; echo "0 0 0 0 0 some entry"; } | crontab - no crontab for test "-":0: bad minute

我正在使用shell脚本部署我的服务器。我有一句话:

crontab -l | { cat; echo "0 0 0 0 0 some entry"; } | crontab -
no crontab for test                                                                                  
"-":0: bad minute                                                                                     
errors in crontab file, can't install.    
我如何修改这一行以作为名为test的系统用户运行这个cron?当我尝试这个:

APPUSER="test"
crontab -u $APPUSER -l | { cat; echo "/10 * * * * somepath/bin/python somepath/cron.py"; } | crontab -
no crontab for test                                                                                  
"-":0: bad minute                                                                                     
errors in crontab file, can't install.    
我得到这个错误:

no crontab for test                                                                                  
"-":0: bad minute                                                                                     
errors in crontab file, can't install.    

我哪里出错了?

我认为您必须在/10之前添加*以使其每10分钟运行一次,并在最后一个crontab调用中添加-u$APPUSER以将其添加到$APPUSER的crontab中。比如:

no crontab for test                                                                                  
"-":0: bad minute                                                                                     
errors in crontab file, can't install.    
APPUSER="test"
crontab -u $APPUSER -l | { cat; echo "*/10 * * * * somepath/bin/python somepath/cron.py"; } | crontab -u $APPUSER -

省去最后一个| crontab-来查看生成的crontab。因此它应该是:crontab-u$APPUSER-l{cat;echo/10****somepath/bin/python somepath/cron.py;}?是的,只是为了调试。此输出是错误抱怨的输出。另外,请查看man 5 crontab以了解正确的语法。感谢您的帮助。当我运行这个命令时,它没有为测试抛出crontab,但是它不应该向我显示cron吗?如果运行crontab-u test-l,您现在应该可以看到新的crontab条目了。显示该消息是因为测试的crontab最初是空的。那么代码首先打印cron内容?我们能把这个钻头去掉吗?是这样吗?:{cat;echo*/10****somepath/bin/python somepath/cron.py;}| crontab-u$APPUSER-是的,这句话将新条目附加到用户的crontab中。如果您想覆盖用户的crontab以仅包含该条目,则应该这样做:echo*/10****somepath/bin/python somepath/cron.py | crontab-u$APPUSER-