Fork me on GitHub

随笔 - 997  文章 - 5  评论 - 181  阅读 - 300万 

壹:

最近用python搭建一个物联网数据存储的微服务,部署到ubuntu上去,所以,python后台运行是一个必不可少的环节。

贰:

这个只需要是一个命令即可:

命令1(记录所有日志): nohup python -u udp_server.py > test.log 2>&1 &
命令2(只记录错误日志):nohup python -u udp_server.py >/dev/null 2>error.log 2>&1 &
命令3(不记录任何日志):nohup python -u udp_server.py >/dev/null 2>&1 &

命令解析:

nohup 不挂断的意思
python udp_server.py 服务器的启动脚本

-u 代表程序不启用缓存,也就是把输出直接放到log中,没这个参数的话,log文件的生成会有延迟

p.log 将输出日志保存到这个log中

2>1 2与> 结合代表错误重定向,而1则代表错误重定向到一个文件1,而不代表标准输出;

2>&1 换成2>&1,&与1结合就代表标准输出了,就变成错误重定向到标准输出.

& 最后一个& ,代表该命令在后台执行

叁:

查看后台进程:

ps aux |grep python
#或者
ps -ef | grep python

 肆:

当你直接关闭窗口(如crt的SSH连接窗口)的时候,后台程序依然会被关掉,经过多方查证造成这一现象的原因是没有正确退出!按照下方步骤即可成功挂在后台。​​​​​

nohup python test.py >nohup.out 2>&1 &

回车
输入exit命令退出终端
窗口显示login out即可关闭shell

 
posted on   虚生  阅读(1208)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
历史上的今天:
2020-01-31 Celery的常用知识
2020-01-31 Redis 一些基本的概念和基础
2020-01-31 mac下安装并启动RabbitMQ
2018-01-31 bss段和data段的区别
点击右上角即可分享
微信分享提示