Python3开启自带http服务 +nohup后台运行&关闭后台程序

 

Python-Web服务
开启Web服务
1.基本方式
2.指定端口
使用Web服务
开启Web服务
1.基本方式
Python中自带了简单的服务器程序,能较容易地打开服务。
在python3中将原来的SimpleHTTPServer命令改为了http.server,使用方法如下:

1. cd www目录
2. python3 -m http.server
开启成功,则会输出“Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) …”,表示在本机8000端口开启了服务。
如果需要后台运行,可在命令后加"&"符号,Ctrl+C不会关闭服务,如下:

python3 -m http.server &
如果要保持服务,则在命令前加nohup以忽略所有挂断信号,如下:

nohup python3 -m http.server 8001
2.指定端口
如果不使用默认端口,可在开启时附带端口参数,如:

python3 -m http.server 8001
则会在8001端口打开http服务。

使用Web服务
可以使用http://0.0.0.0:8000/查看www目录下的网页文件,若无index.html则会显示目录下的文件。
也可以使用ifconfig命令查看本机IP并使用。

 

 

nohup后台运行&关闭后台程序

 

在跑时间比较长的程序,或者打印信息比较多,或者网络不稳定时,可以采用后台运行程序,然后把打印信息保存在文件中,等程序结束后再检查日志,完成该功能可以用以下命令
1.nohup python3 -u test.py >test.log 2>&1 &

2.回车

3.输入exit命令退出终端

4.关闭shell

注意:不能直接退出终端

其中,
1. 最后一个“&”表示后台运行程序
2. “nohup” 表示程序不被挂起
3. “python”表示执行python代码
4. “-u”表示不启用缓存,实时输出打印信息到日志文件(如果不加-u,则会导致日志文件不会实时刷新代码中的print函数的信息)
5. “test.py”表示python的源代码文件
6. “test.log”表示输出的日志文件
7. “>”表示将打印信息重定向到日志文件
8. “2>&1”表示将标准错误输出转变化标准输出,可以将错误信息也输出到日志文件中(0-> stdin, 1->stdout, 2->stderr)

 

查看后台运行程序及关闭参考博文https://blog.csdn.net/u013123046/article/details/80610931

有两个命令可以用,jobs和ps,区别是jobs用于查看当前终端后台运行的任务,换了终端就看不到了。而ps命令用于查看瞬间进程的动态,可以看到别的终端运行的后台进程。

查看后台应用

(1)jobs命令

功能:查看当前终端后台运行的任务

 

jobs -l选项可显示当前终端所有任务的PID,jobs的状态可以是running,stopped,Terminated。+ 号表示当前任务,- 号表示后一个任务。

(2)ps命令

功能:查看当前的所有进程

 

ps -aux | grep "test.sh" #a:显示所有程序 u:以用户为主的格式来显示 x:显示所有程序,不以终端机来区分

关闭当前后台运行的命令

kill命令:结束进程

(1)通过jobs命令查看jobnum,然后执行 kill %jobnum

(2)通过ps命令查看进程号PID,然后执行 kill %PID

如果是前台进程的话,直接执行 Ctrl+c 就可以终止了
————————————————
版权声明:本文为CSDN博主「忘忧春草」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_38723657/article/details/106502995

posted @ 2021-07-19 16:36  小筱痕  阅读(2386)  评论(0编辑  收藏  举报