今天同事聊天说centos7 &后台运行脚本的时候,关闭终端,后台运行就会停止。
之前没关注,特地测试了下:
脚本文件:1.php
1 <?php 2 $index = 1; 3 $file = 'test.csv'; 4 5 while($index<10000){ 6 sleep(2); 7 file_put_contents($file,$index."\n",FILE_APPEND); 8 $index += 1; 9 }
分别在centos7和centos6下运行
命令如下:
php 1.php & 然后关闭终端
测试结果
centos6会继续运行脚本,而centos7会随着终端关闭停止脚本运行。
解决方法:使用nohup命令
在centos7下用 nohup php 1.php & 命令替代原命令,脚本运行将不受终端关闭影响。
转一篇学习文章 :https://www.ibm.com/developerworks/cn/linux/l-cn-nohup/