`

利用Python修改服务器上的定时器crontab配置

阅读更多
Python版本:2.7




#!/usr/bin/python
#5.py
import os
import commands

def updateCrontab():
    #创建一个定时器配置文件
    file_name='/data/mondev/crontab_temp'
    if os.path.exists(file_name) and os.path.isfile(file_name):
        os.remove(file_name)
    f = open(file_name,'a')
    #写入定时器脚本
    f.write('0 */24 * * * /data/mondev/mondo/client/bin/magent restart')
    f.close()
   
    if os.path.isfile(file_name):
        #利用crontab命令进行替换
        tuple_temp = commands.getstatusoutput('crontab /data/mondev/crontab_temp')
print tuple_temp
print tuple_temp[0]
        if tuple_temp and tuple_temp[0] == 0:
            pass
        else:
            print 'Error:update mondev user crontab has error.'
    else:
        print 'Error:create /data/mondev/crontab_temp has error.'   




if __name__ == '__main__':
    updateCrontab()



上面的代码在执行的时候一直报:
(256, '"/data/mondev/crontab_temp":1: premature EOF\nerrors in crontab file, can\'t install.') 错误提示; 原因是在向crontab_temp文件中写入定时命令后没有加入换行符。

修改为:
  f.write('0 */24 * * * /data/mondev/mondo/client/bin/magent restart\n')

即可。



@2016-10-24 17:34
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics