import time
def createDaemon():
import os, sys, time
#产生子进程,而后父进程退出
try:
pid = os.fork()
if pid > 0:sys.exit(0)
except OSError as error:
print('fork')
sys.exit(1)
#修改子进程工作目录
os.chdir("/")
#创建新的会话,子进程成为会话的首进程
os.setsid()
#修改工作目录的umask
os.umask(0)
#创建孙子进程,而后子进程退出
try:
pid = os.fork()
if pid > 0:
print("Daemon PID %d"%pid)
sys.exit(0)
except OSError as error:
print("fork")
sys.exit(1)
run()
count=0
def run():
global count
while True:
fd = open('/home/test.log', 'a')
fd.flush()
count+=1
fd.write("get Data is%dn"%count)
time.sleep(3)
fd.write("end of time--------:%sn"%time.ctime())
fd.flush()
fd.close()
if __name__=='__main__':
createDaemon()
在while True循环中就可以不断执行自己的任务在后台,利用sudo python3 文件名就可以执行后台服务程序。
以上代码部分来自于网络,如有侵权前联系删除。



