python 后台运行
Python
后台运行
关于
Python
后台运行,查找了很多资料,配合Tornado
后端库来实现。
首先聊一聊
Linux
中,关于后台和前台的问题。当前状态下,执行了一条阻塞型命令(
apt update
或是yum update
)时,我们无法再这条命令执行的基础上,再执行命令。当然&&
是类似于消息队列,之前的命令完成(无论状态)之后再执行。而后台便是一种类似并发,可以同时执行多条指令。这此之上,可以将重定向输出。
# -*- coding:utf-8 -*-def run():print("run 1")import timefor i in range(100):time.sleep(1)print(i)if __name__ == '__main__':run()
当我们有一个
python
文件(名字run.py
)使用
python3 run.py
的时候,这个程序将会在终端中输出数字(1-100)的同时休息1秒。除非我们ctrl+c
终止,或者ctrl+z
移至后台。
但是对于后端程序而言,ctrl+z
将会把程序放入后台,并且处于暂停状态。
第一种:后台不暂停挂起方式(安利)
# 原命令 >>> python3 run.py# 在执行程序时,添加命令 >>> nohup python3 run.py > my.log &
nohup
不挂断运行命令&
后台运行>
将程序输出结果重定向输出到my.log
日志中,若不指定日至文件,将使用默认nohup.out
直接用
./sh
文件就可以运行但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要
nohup
命令和&命令。第二种:使用
python-daemon
方式pip3 install python-daemon
写一个新的
py
文件(名字:run2)import daemon from run import run with daemon.DaemonContext():run()
然后
python3 run2.py
第三种:
ctrl+z
+bg
指令# ctrl+z将前台运行的程序放入后台挂起 time@time:~$ python3 run.py runing 0 1 2 ^Z [1]+ 已停止 python3 run.py time@time:~$
# 使用bg %jubnum 方式继续运行 time@time:~$ bg 1 [1]+ python3 run.py & time@time:~$ 3 4 5 6 7 8 9 10 ...
如果这样做,那么输出结果将继续占用终端,
ctrl+z
将无法后台运行原因在于:
bg
指令本身是将后台暂停的程序继续运行,但并不是将程序本身从后台调至前台。所以占用终端的不是程序本身,而是输出结果。有一种很烦人的做法,让当前终端都处于一种
ctrl+c
都无法终止的情况# ctrl+z将前台运行的程序放入后台挂起 time@time:~$ python3 run.py runing 0 1 2 ^Z [1]+ 已停止 python3 run.py du@du-GL553VD:~$
依旧这样做,但在
bg 1
的时候,重定向输出结果……time@time:~$ bg 1 > my.log # 或 time@time:~$ bg 1 > my.log &
除非关闭终端,让我们肉眼无法看到……???
***请不要在有实时输出的情况下用这种方式,不然连条命令写都写不了
python 后台运行相关推荐
- Python后台运行 -- nohup python xxx.py
nohup 用法总结 代码示例 nohup指令 2>&1 错误内容重定向到标准输出 & 后台运行 若不指定输出文件名,默认会在当前目录生成nphup.out文件 可能存在的问题 ...
- linux使得python后台运行,linux 下后台运行python脚本
&符号 这两天要在服务器端一直运行一个Python脚本,当然就想到了在命令后面加&符号 $ python /data/python/server.py >python.log & ...
- 【破事氵】在Linux环境中让程序在后台运行
前言 首先,相信大家都或多或少了解过linux和云服务器.linux作为一个开源的操作系统内核,在开发者人群和服务器领域中有着很高的使用率.而现在在以阿里云为代表的云服务器商中,可以以很低的价格买入入 ...
- 【Linux系统理论操作学习26】LInux的后台运行,重定向输出,前后台进程转换和管理
1 输出的后台运行 1.1 简单后台运行 nohup表示程序不被挂起 &表示后台运行程序 如果说使用&,就会出现问题:后台执行的进程,其父进程还是当前终端shell的进程,而一旦父进程 ...
- Linux在后台运行python程序、脚本程序、可执行程序等,关闭终端仍可保持程序运行
欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 Linux在后台运行python程序.脚本程序.可执行程序等,关闭终端仍可保持程序运行 文章目录: 1 为什么需要后台运 ...
- python程序后台运行的实现
后台运行work()方法. work.py 1 # -*- coding:utf-8 -*- 2 3 def work(): 4 print "running" 5 import ...
- Python脚本后台运行的五种方式
方法一:脚本后加& 加了&以后可以使脚本在后台运行,这样的话你就可以继续工作了.但是有一个问题就是你关闭终端连接后,脚本会停止运行: 如: <span style="w ...
- linux后台运行python脚本
&符号 这两天要在一直运行一个Python脚本,当然就想到了在命令后面加&符号 $ python /data/python/server.py >python.log & ...
- bash不识别命令 ssh_关于Python脚本在后台运行的几种方式!(linux,bash,tmux,等)...
前言: 今天为大家带来的内容,主要介绍了Python脚本后台运行的几种方式,linux下后台运行.通过upstart方式实现.通过bash脚本实现.通过screen.tmux等方式实现,需要的朋友可以 ...
最新文章
- bzoj 1731 [Usaco2005 dec]Layout 排队布局——差分约束
- zabbix工作流程(自定义添加监控项目)
- 数据挖掘 —— 有监督学习(回归)
- java小数转换成百分数_在java中如何把小数转化成百分数
- win7下删除提示没权限删除文件的方法
- jquery-autocomplete学习(转)
- windows 2008 R2系统安装拨号v p n详细配置
- zk4元年拆解_科比5 Protro开箱测评 zk5元年拆解赏析
- unixbench分析_unixbench测试CPU性能工具
- java jdom 创建xml_JDOM 创建 XML
- java 汉字 拼音排序_Java字符串按照汉语拼音排序
- elastic mapping not_analyzed 简单理解 + analysis-ik分词器安装
- [技术评论]龙芯电脑
- 算法开发:将合并后的模型编译成动态库(so文件)提供给qt调用
- OpenCV简单图像分割
- 微信ios上下拉网页禁止
- 001-查看ts版本、安装、卸载
- html中一些标签怎么打印,html2ps - 如何打印小标签?
- 如何知道当前操作系统是centos的哪个版本和内核版本?
- Linux基础知识学习笔记-----crack_the_WiFi_secret
热门文章
- xshell文件传输乱码_xShell终端中文乱码完全解决方法
- docker 笔记一
- 2020年消费电子行业前瞻:5G引领代际创新(156页)
- 【华为OD机试模拟题】用 C++ 实现 - 密室逃生游戏(2023.Q1)
- 微软Power Platform在中国市场正式商用 无缝衔接微软智能云“三驾马车”
- 使用Dreamweaver/利用HTML5/CSS/制作一个简单的文字logo
- NOIP 2008 普及组 传球游戏
- 【ABC科创企业案例】高科数聚:把脉消费者视角,洞悉消费力趋向
- 庞果网练习题——魔法
- iNFTnews | 元宇宙如何为性别酷儿人群提供包容空间