我已經看過其他的python模塊分發問題。我的需求有點不同(我認爲!,我是Python新手+)捆綁/執行Python腳本+模塊到遠程機器
我有一堆python腳本,我需要在遠程機器上執行。這是目標環境的樣子;
- 機器將安裝基礎的Python運行時
- 我將有一個SSH賬戶;我可以使用ssh遠程登錄或執行命令
- 我可以將文件(scp)複製到我的家目錄
- 我不允許在機器上安裝任何東西;機器甚至可能無法訪問互聯網
- 我的腳本可能會使用一些「異國情調」的python模塊 - 很可能它們將不會出現在目標機器上
- 審計後,我的主目錄將被屏蔽機器(不留痕跡)
所以我想要做的是:
- 副本Python腳本+模塊遠程機器(比如在/ home/audituser /腳本)的目錄結構。和模塊可以複製到/ home/audituser/scripts/pythhon_lib)
- 然後執行一個腳本(比如說/home/audituser/scripts/myscript.py)。該腳本需要解析'python_lib'子目錄中使用的所有模塊。
這是可能的嗎?還是有更好的方法來做到這一點?我想我所看到的是將第三方模塊「重新定位」到腳本目錄中。
在此先感謝!
我會嘗試這些建議;儘管我認爲他們可能比我需要的更多。 有沒有什麼辦法可以通過按摩PYTHON_PATH來做到這一點? –
嗯,它是'PYTHONPATH',而不是'PYTHON_PATH'。我不知道爲什麼你需要按摩它。如果只是將模塊複製到腳本目錄中,只需複製它們即可,不需要'PYTHONPATH'。如果要弄清楚哪些模塊難以收集,或者需要C擴展模塊和C依賴關係,或者由於其他原因,這不會起作用,「PYTHONPATH」將無濟於事。如果你想按摩'PYTHONPATH',當然你可以 - 或者更簡單地說,從腳本內部按摩'sys.path' - 但是如果你不知道你想用它做什麼,你可能不會'不需要它。 – abarnert