Shell 腳本檔案 - 將多個參數傳遞給解釋器

Shell 腳本檔案 - 將多個參數傳遞給解釋器

我有一個運行的 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 上,這也可能對你有幫助。

相關內容