红联Linux门户
Linux帮助

如何让你的linux程序在后台静默执行?

发布时间:2016-12-25 10:16:46来源:blog.csdn.net/stpeace作者:stpeace
最近写了个工具,需要在后台静默执行,即使关闭了当前Linux命令行窗口,也不会有影响,我们来戏说。
 
1.写main.cpp, 生成可执行的二进制文件main (要注意权限,确保可执行)
 
2.写脚本run.sh (要注意权限,确保可执行)
#!/bin/bash  
allfile=`ls test_*`  
for onefile in $allfile  
do  
/usr/local/services/main /usr/local/services/$onefile &   
done
 
3.执行脚本:
/usr/local/services/run.sh &  
 
然后,即使你关闭当前窗口,后台的程序也不会停,你可以爽爽地去睡觉了。 
 
这里我们要注意以下几点:
a.两个&都不能丢掉,否则就不能在后台静默执行
 
b.脚本中的那个循环,会循环开启多个进程,这些进程会并发执行,并不是说要等前一个进程执行完后,才执行下一个进程。你可以在for循环中加log试一下,这些log是立即循环输出的。这样就很好了,多进程在后台并发地静默执行,太爽了。
 
c.如果要杀死所有的后台静默执行的进程,执行killall main命令就可以了,爽。
 
d.test_*文件是怎么来的呢?请参考我介绍过的linux split命令:http://www.linuxdiyf.com/linux/27236.html
 
本文永久更新地址:http://www.linuxdiyf.com/linux/27237.html