2015-03-18 75 views
1

我有一個運行在vps上的python腳本。現在我只想使用我的臺式計算機在運行腳本中更改1個變量。使兩個python腳本彼此交談的最簡單方法?

初學者最簡單的方法是什麼?

+0

最簡單的方法可能是[套接字](https://docs.python.org/2/library/socket.html) – 2015-03-18 23:27:41

回答

1

如果我是初學者,我會讓我的遠程腳本定期檢查文本文件中變量的值。當我需要更新變量時,我只需ssh到我的遠程機器並更新文本文件。

0

使用定期輪詢的文本文件是一種簡單的方法。

一個更高效,也許更簡單的方法是在你的python進程中註冊一個信號處理程序,當需要而不是連續輪詢時,強制進程重新加載文本文件中的值。在linux上,您可以在更新文件後使用終端中的kill命令發送信號。這實際上可能比實施連續輪詢更簡單。

import signal 
import sys 
import os 
print os.getpid() 
def signal_handler(signal, frame): 
    # open text file and check for new value 
    print "value reset" 
signal.signal(signal.SIGUSR1, signal_handler) 

然後在Linux終端觸發值重新加載,你可以這樣做:

kill -SIGUSR1 pidprinted 

如果你想獲得真正看中的,你可以註冊一個信號處理程序來啓動PDB(Python的調試器) ,將值注入正在運行的進程中,然後繼續,但我認爲執行上述操作最簡單。

相關問題