Python3開啓自帶http服務 +nohup後臺運行&關閉後臺程序

Python-Web服務
開啓Web服務
1.基本方式
2.指定端口
使用Web服務
開啓Web服務
1.基本方式
Python中自帶了簡單的服務器程序,能較容易地打開服務。
在python3中將原來的SimpleHTTPServer命令改爲了http.server,使用方法如下:

1. cd www目錄
2. python -m http.server
開啓成功,則會輸出“Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) …”,表示在本機8000端口開啓了服務。
如果需要後臺運行,可在命令後加"&"符號,Ctrl+C不會關閉服務,如下:

python -m http.server &
如果要保持服務,則在命令前加nohup以忽略所有掛斷信號,如下:

nohup python -m http.server 8001
2.指定端口
如果不使用默認端口,可在開啓時附帶端口參數,如:

python -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 就可以終止了
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章