我在 powershell 命令提示字元下啟動了 conda 環境。我有一個已經用 pip 安裝的 python 套件:
pip install -e .
它使用入口點安裝我的套件simulate
。從 powershell 命令提示字元調用時它工作正常:
simulate "abcd"
當我嘗試從 powershell 腳本中呼叫它時,找不到它。
powershell.exe .\run.ps1
返回:
simulate : The term 'simulate' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct
and try again.
At C:\path\to\script\run.ps1:1 char:1
+ simulate "abcd"
+ ~~~~~~~
+ CategoryInfo : ObjectNotFound: (nwsetup:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
答案1
使用Start-Process
及其-ArgumentList
選項來執行 python 命令(或腳本),並向其傳遞實際 python 命令(或腳本)期望的參數值。將參數設定-FilePath
為python.exe
Windows 上檔案的完整路徑。
電源外殼
Start-Process -FilePath "C:\Program Files\Python\python.exe" -ArgumentList 'simulate "abcd"';
或呼叫 python 腳本
Start-Process -FilePath "C:\Program Files\Python\python.exe" -ArgumentList '"c:\scripts\simulate.py" "abcd"';
支持資源
答案2
simulate "abcd"
在C:\path\to\script\simulate.exe "abcd"
poweshell 腳本內部替換解決了我的問題。