當前位置:首頁 » 編程軟體 » python腳本後台執行

python腳本後台執行

發布時間: 2023-03-28 05:27:40

python腳本在Windows下後台運行

Python腳本在linux後台執行加個&就行了

在Windows起Python服務總有不暢

查了一下,可以用start /b python xxx.py後台運行,

這招雖然不影響cmd操作,和扒遲但是關閉cmd窗口後服務也死了

解決這個問題挺麻此灶煩的,需要以Windows服務的方式掛起來

第一步,將Python腳本打包成exe可執行文件,詳見:喚李

用python加cPAMIE加pyinstaller為我柱哥點贊
打包成exe文件以後,cmd執行

㈡ linux中彈不出gui界面

在進行python寫GUI程序的時候,使用Tkinter,發現無局模法執行程序,報錯如下:

X connection to localhost:10.0 broken(explicit kill or server shutdown)
原因分析:

主要是因為環境變數設置不當導致。

解決方法:

報錯的使用的xshell,在這里調用會使用環境變數DISPLAY

報錯前的DISPLAY值為:

$ echo $display
localhost:10.0
進行設置DISPLAY為正確值:

首先查看xshell運行機器的IP地址,在我運行的IP地址為192.168.1.11,從而設置DISPLAY如下:

export DISPLAY=192.168.1.11:0.0
再次運行GUI程序,即可正確的顯示界面。

python在linux上的GUI無法彈出界面的更多相關文章
Nginx+uWSGI+Django+Python在Linux上的部署
搞了一整天,終於以發現自己訪問網路的埠是錯誤的結束了. 首先要安裝Nginx,uWSGI,Django,Python,這些都可以再網上查到. 安告拿裝好後可以用 whereis 命令查看是否安裝好了各種 ...

python腳本linux上後台執行
1.腳本後加& 加了&以後可以使腳本在後台運行,這樣的話你就可以繼續工作了.但是有一個問題就是你關閉終端連接後,腳本會停止運行 python3 run.py >/dev/null ...

使用 Python 在 Linux 上實現一鍵回歸測試
從代碼庫遷出代碼 —- pexpect 的使用 測試人員從代碼庫(例如 CVS )遷出代碼的過程中,需要手動輸入訪問密碼,而 Python 提供了 Pexpect 模塊則能夠將手動輸入密碼這一過程自動 ...

利用python監測linux上的服務(簡單實現服務宕掉自動發送郵件)
python 這里用到了四個python 模塊 : import time (時間模塊) import re (正則模塊) import socket (監測埠模塊)import yagmail ( ...

使用Python獲取Linux系統的各種信息
哪個Python版本? 當我提及Python,所指的就是CPython 2(准確的是2.7).我會顯式提醒那些相同的代碼在CPython 3 (3.3)上是不工作的,以及提供一份解釋不同之處的備選代碼 ...

使用 Python 獲取 Linux 系統信息
探索platform模塊 platform模塊在標准庫中,它有很多運行我們獲得眾多系統信息的函數.讓我們運行Python解釋器來探索它們中的一些函數,那就從platform.uname()函數開始吧: ...

【轉】 使用 Python 獲取 Linux 系統信息
在本文中,我們將會探索使用Python編程語言工具來檢索Linux系統各種信息.走你. 哪個Python版本? 當我提及Python,所指的就是CPython 2(准確的是2.7).我會顯式提醒那些相 ...

在linux上安裝python, jupyter, 虛擬環境(virtualenv)以及 虛擬環境管理之virtualenvwraper
一, 安裝python31.下載python3源碼 wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz2.解壓縮源碼包,去 ...

Python基於Python實現批量上傳文件或目錄到不同的Linux伺服器
基於Python實現批量上傳文件或目錄到不同的Linux伺服器   by:授客 QQ:1033553122 實現功能 1 測試環境 1 使用方法 1 1. 編輯配置文件conf/rootpath_fo ...

隨機推薦
3、Object對象的兩大方法(hashCode-equals)總結
Object類是所有java類的父類. 用戶定義了如下一個Person類 public class Person{} 在類定義中並沒有明確繼承Object類,但是編譯器會自動的完成這個過程. 既然所有 ...

URAL 1250 Sea Burial 簡單Floodfill
問這個人掉落的海域包含幾個島嶼. 八方向相連為同一片海域,四方向相桐友緩連為同一個島嶼.與邊界相連的島嶼不算. 方法:在給定地圖外面填充一圈".",從這個人掉落的地方開始進行floodf ...

CEdit的簡單用法
今晚閑來無事,寫篇博文聊解解悶~ CEdit這個空間類,我之前倒是用過,不過那個時候用的還比較菜,現在么,依舊比較菜~ 首先,因為我今天剛做完了一個區域網聊天軟體,用的就是CEdit來顯示和獲取數據的 ...

簡訊發送AZDG加密演算法
public static string passport_encrypt(string txt, string key)         {             //   使用隨機數發生器產生  ...

ubuntu 默認 進入 命令行
圖形模式下,首先進入終端:1. 運行 sudo vi/etc/default/grub2. 找到 GRUB_CMDLINE_LINUX_DEFAULT=」quiet splash」3.改為 GRUB_ ...

南陽理工ACM Skiing問題
描述 Michael喜歡滑雪百這並不奇怪, 因為滑雪的確很刺激.可是為了獲得速度,滑的區域必須向下傾斜,而且當你滑到坡底,你不得不再次走上坡或者等待升降機來載你.Michael想知道載一個區域中最長底 ...

sqlserver資源下載
安裝包可以從itellyou下載 NorthWind 安裝SQL2000SampleDb.msi 之後可以在C:\SQL Server 2000 Sample Databases目錄 2016/01/ ...

JavaScript 類的定義和引用 JavaScript高級培訓 自定義對象
在Java語言中,我們可以定義自己的類,並根據這些類創建對象來使用,在Javascript中,我們也可以定義自己的類,例如定義User類.Hashtable類等等.     一,概述 在Java語言中 ...

聚合函數欄位注意.where和having的區別
當使用聚合函數時,出現在select中的欄位要麼出現在聚合函數里,要麼出現在group by 子句里.像下面這句是錯誤的: 1 SELECT  detno,AVG(sal),job FROM  emp ...

android下身份驗證方式調用webservice
在企業開發領域,webservice還是經常被用到的服務體系,因為他對安全事務支持都比較好. 有時候,我們就需要在android下調用後端的webservice服務,因為在內部網路環境下,所有需要ba ...

熱門專題

㈢ python命令看不懂,求解釋

python /usr/lib/python2.7/site-packages/vnc_cfg_api_server/vnc_cfg_api_server.py --logging_level=DEBUG --conf_file /etc/contrail/api_server.conf &
這段意思是在後台執行一個路徑下的python腳本,腳本名為vnc_cfg_api_server.py,中間是設置日誌級別以及配置文件的路徑
echo $! >/opt/stack/status/contrail/apiSrv.pid; fg || echo "apiSrv failed to start" | tee "/opt/stack/status/contrail/apiSrv.failure"^M
這段意思是將運行在後台最後的一個進程id寫入到apiSrv.pid文件中,或者列印"apiSrv failed to start"並且將錯誤信息寫入到apiSrv.failure文件中
另外解釋幾個shell中的幾個符號:
$! 是在後台運行的最後的工作的PID(進程ID)
& 是後台運行的一個命令
|| 是或操作符
| 是管道符
^M這個應該你打開的文件是一個linux下的文件,在window會有個這個符號。

整體的意思是執行腳本之前把最後運行的id寫入到一個文件中,如果有錯誤,則列印出來並且也寫入到一個文件,隨後執行那個python腳本

㈣ python如何成服務在後台一直運行,或者讓其隔幾分鍾自動運行一次

如果你中叢只想運行一逗培空次,那麼不用循環幾乎是不可能的。當然你用crontab之類的定時任務來處理也可以。我猜想你登陸之後應該是要做一些操作的,那麼在做任何操作之前你都去判斷一下登陸狀態,如果session過期或者其他原因導致登陸狀態失效,那麼就執行重登陸。
把腳本丟在後台執山瞎行,結果輸出到log,應該沒什麼問題的。

㈤ nohup執行python腳本看不到log

python的輸出有緩沖伏則畝,導致log並不能盯逗夠馬上看到輸出。

-u參數,使得python不啟用緩沖。

所以修改缺森命令即可:nohup python -u test.py > log &

nohup送入後台運行:

nohup python -u train_lanenet.py  >nohup 2>&1 &

# 使用第一張到第三張GPU卡

import os

os.environ["CUDA_VISIBLE_DEVICES"] = "1,2,3"

㈥ python腳本中怎麼運行saltstack命令

利用saltstack的salt.client模塊可以在python的命令行下或者python腳本里執行相應的salt命令
master端想要執行類似 salt '*' cmd.run 'uptime' 在saltclient里可以這么寫
importsalt.client
local=salt.client.LocalClient()
local.cmd('*','cmd.run',['uptime'])
也可以放到後台執行只返回一個jid
cmd_async('*','cmd.run',['uptime'])
得到jid可以通過get_cache_returns(jid)方法來獲取執行結果,在沒有執行完成以前是為空的所以可以寫一個while來一直讀取結果直到讀取到或者超出規定時間為止
importsalt.client
local=salt.client.LocalClient()
t=0

㈦ 如何在Windows系統中設置Python程序定時運行

首先,你得安裝python的運行環境唄。。 1. 默認的程序要設置,如果不會設置,就重新裝一次python就行 2. 需要設置環境變數:例如你的程序為:C:\Python26,則你需要把這個地址粘貼在:右鍵我的電腦->屬性->高級->環境變數,然後再下邊的 系統變數 選擇框中,雙擊path(大小寫無所謂),在變數值的框中,添加: ;C:\Python26,記得在路徑之前添加分號(;),當然是英文輸入法下的分號 3. 這一點很重要,因為執行的速度很快的時候,cmd窗口是不會自動pause的,所以會一閃而過。。如果只是print之類的語句,或許根本沒有什麼結果留下。。所以,這種還是選擇用IDLE來運行吧。。。

㈧ CentOS下後台運行Python腳本及關閉腳本的一些操作

自己寫了一個python腳本,但是直接遠程用putty連接後#python xxx.py執行,關閉putty腳本也隨之關閉了,這里需要用到『setsid』這個命令。

#setsid python xxx.py

如此即可將腳本加入到後台執行

若想查看所有後台運行的進程

#ps -aux

這里可以看到每個進程都有一個PID,如果想殺死這個進程,則使用

#kill-9[PID]-9表示強迫進程立即停止

nohup python -u test.py > out.log 2>&1 &

㈨ 如何讓 Python 代碼常駐在伺服器進程中

一、nohup

nohup,即 no hangup,nohup 的用途就是讓提交的命令忽略 hangup 信號,從而使我們的進程避免中途被中斷。它可以讓 python 腳本和伺服器連接端的 session 分離,以達到退出後依舊執行:

$ chmod +x /your_path/yourscript.py # 先設置可執行許可權$ nohup python /your_path/yourscript.py# 切記退出的 Terminal 的時候,不要 ctrl+c 退出,而是直接關閉,不然 Nohup 就被你關閉了。

如何關閉這個一直執行的進程呢:

# 找到對應的進程 PID
$ ps -ef | grep python

# 返回內容如:
user 2430 1 0 Jul03 ? 00:00:01 /usr/bin/python -tt /usr/sbin/yum-updatesd

# kill 掉該進程即可:
$ kill -9 2430

PS:nohup 在伺服器重啟之後就失效了,所以並不完美。

二、將命令寫入 Linux 啟動腳本

Linux 在啟動的時候會執行 /etc/rc.local 裡面的腳本,所以只要在這里添加執行命令就可以:

$ vim /etc/rc.local

# 如果是 Centos 添加以下內容:
/your_path/python3.4 /your_path/yourscript.py

# 以上內容需要添加在 exit 命令前,而且由於在執行 rc.local 腳本時,PATH 環境變數未全部初始化,因此命令需要使用絕對路徑。

PS:這種方式的缺點是如果腳本掛了,那麼不會自動重新啟動。

三、使用 Supervisor 進程管理工具

詳見這篇文章:使用 Supervisor 管理伺服器後台進程,在伺服器重啟和腳本出錯後,可以完美重啟,推薦。

熱點內容
易觀資料庫 發布:2025-07-18 05:19:31 瀏覽:994
linux的c語言編譯 發布:2025-07-18 05:16:22 瀏覽:601
為何編譯硬體驅動 發布:2025-07-18 05:15:02 瀏覽:488
android適配原理 發布:2025-07-18 05:11:59 瀏覽:550
網路存儲伺服器如何搭建 發布:2025-07-18 04:47:23 瀏覽:549
手機上玩電腦我的世界伺服器 發布:2025-07-18 04:11:59 瀏覽:599
騰訊和安卓哪個渠道好 發布:2025-07-18 04:07:49 瀏覽:829
ftp不支持中文 發布:2025-07-18 03:46:19 瀏覽:245
伺服器太水了什麼原因 發布:2025-07-18 03:44:31 瀏覽:955
安卓怎麼去除紅色塗鴉 發布:2025-07-18 03:39:30 瀏覽:608