簡體   English   中英

如何創建.desktop文件以在Linux上啟動python腳本?

[英]How to create a .desktop file to launch a python script on linux?

我創建了一個使用virtualenv進行依賴的python腳本ExeMain.py。 因此,要使用.desktop啟動此腳本,請執行以下命令

Exec=sh -c 'source ~/PycharmProjects/ProBlog/venv/bin/activate; python ~/PycharmProjects/ProBlog/ExeMain.py;'

導致此錯誤的原因為“ sh:1:源:找不到”,然后出現“ ImportError”

如果在.desktop文件中沒有source命令,並且在直接python環境中安裝了所有必需的模塊,它就可以正常工作(在其他Linux機器上)。 由於它似乎不是一個好習慣,所以我嘗試使用venv。 從導入錯誤開始,我可以看到的錯誤是因為未執行source命令。

當我啟動.desktop文件時,它應該執行ExeMain.py文件。

標准版本的sh沒有source命令。 也許使用/ bin / bash代替? 因此,可以這樣寫:

Exec=/bin/bash -c 'source /home/username/PycharmProjects/ProBlog/venv/bin/activate && /home/username/PycharmProjects/ProBlog/venv/bin/python /home/username/PycharmProjects/ProBlog/ExeMain.py'

我還建議其他三個更改:1) &&運算符,以便在activate完成之前它不會嘗試運行python代碼,2)如果桌面環境無法正確擴展它,請用完整路徑替換~波浪號和3)放入venv python的完整路徑,這樣它就不會默認為系統python。 其中一些可能不是必需的(取決於系統設置),但是小心一點也沒有什么壞處。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM