2017-06-28 16 views
1

我試圖運行寫在我的本地機器上使用終端下面的命令行遠程桌面上的Python腳本:如果繪圖是輸出的一部分,在遠程桌面上的本地計算機上運行python腳本時如何處理「QXcbConnection」錯誤消息?

cat myscript.py | ssh [email protected] python 

的Python 3 Anacanoda3下安裝在本地和遠程計算機。這是在試圖顯示的情節在運行中間的錯誤消息:

QXcbConnection:無法連接到顯示

可能是什麼原因,如何解決?還有一些其他帖子與相同的錯誤消息有關,但是由於不同的原因/用途。

+0

試用'cat myscript.py | ssh -X [email protected] python' – eyllanesc

+0

它的工作原理除了它試圖在遠程計算機上查找腳本而不是在本地計算機上查找腳本。換句話說,我的腳本在我當前的本地機器上,我只是想在遠程桌面上運行它。 – Allan

+0

試一下:'cat myscript.py | SSH 「DISPLAY =:0」 [email protected] python' – eyllanesc

回答

1

您必須使用-X參數來激活窗口共享。

cat myscript.py | ssh -X [email protected] python 
+0

這很有趣。你是對的。第一個命令確實有效。然而,建議的命令行有點奇怪,它沒有考慮主代碼中的輔助python代碼。換一種說法。代碼到達「導入設置」行時。它認爲它必須在本地機器中同名的遠程機器上查找「settings.py」文件。該文件初始化值,很明顯,運行命令會獲取遠程計算機中版本的值。 – Allan

+0

有沒有辦法指示命令查找本地機器內的導入,而不是重命名「settings.py」模塊? – Allan

+1

這是貓複製文件的內容,它不執行它。例如,該文本會說import mymodule,並且遠程python會查找遠程文件夾,python不知道該軟件包是否在其他地方。 – eyllanesc

相關問題