我有一個運行的 Python 腳本,需要在特殊環境下執行,因此我會從我的工作目錄 ( ~/project/src
) 運行該程式:
python manage.py shell
這將開啟一個互動式 shell,讓我開始輸入自己的命令。
我有另一組管理活動,我想將其存放在另一個目錄中 ( ~/project/admin
)。這管理.py從工作目錄運行確實很挑剔。因此,為了使整個事情順利進行,我編寫了一個腳本,如下所示:
#!/usr/bin/python ../src/manage.py shell
這有幾個問題。首先是它不起作用:
/usr/bin/python: can't open file '"/../src/manage.py" shell': [Errno 2] No such file or directory
- 如何向解譯器指定多個參數?
- 如何更改工作目錄?
答案1
您只能向解釋器指定一個參數。我認為您也不能在其中使用相對目錄。
我建議您將需要執行的操作包裝在 shell 腳本或使用 Popen() 來呼叫它的 Python 腳本中。
答案2
假設我的猜測是正確的,你處於 Django 環境中...
看看 James Bennet 的文章獨立 Django 腳本。請參閱有關「使用 setup_environ()」的部分,其中提到這「正是 Django 自己的 manage.py 腳本處理設定的方式」。
有一個類似的問題在 stackoverflow 上,這也可能對你有幫助。