python 使用 Popen 打开时在 powershell v3 中无法访问
python not accessible in powershell v3 when opened with Popen
希望这应该很简单。 Python 如果我手动打开 PowerShell v3,环境会 运行 正常。我可以检查版本和 运行 外部脚本等。但是一旦我从另一个应用程序的 python 脚本打开 powershell.exe 到 subprocess.Popen,python 就赢了't 运行; "The term 'Python' is not recognised as the name of a cmdlet, function, script file or operable program... etc"
我反复检查了我的环境路径,python 在系统上 运行 总体上没问题。
有人知道这可能是由什么引起的吗?
subprocess.Popen(["powershell.exe", '-ExecutionPolicy', 'RemoteSigned', "path to PS1_script_with python command"])
我的 PS1 文件如下所示:
cd C:\Users\David\Geeknote\geeknote-master\geeknote
python gnsync.py --path "C:\Users\David\Desktop\C4DtoEvernote", --mask "*.nfo", --notebook "Python Logs"
function Pause{Read-Host 'You have successfully synced your C4D Annotations to Evernote using gnsync.
Please press Enter to continue...' | Out-Null}
Pause{}
似乎(无论出于何种原因)您的 $PATH
没有被进程读取或接受;因此找不到 python
。
您可以:
设置路径为$env:Path = "C:\Python27:C:\Python27\Scripts";
使用自定义控制台配置文件(即 .ps1
文件)设置路径并使用 -PSConsoleFile
.
传递它
最简单的选项,将完整路径传递到命令文件中的 Python 可执行文件 C:\Python27\python.exe gsync.py ...
我会尝试#3,然后看看您是否需要其他选项。
适当调整路径 - 特别是如果您安装了多个 Python 解释器。
希望这应该很简单。 Python 如果我手动打开 PowerShell v3,环境会 运行 正常。我可以检查版本和 运行 外部脚本等。但是一旦我从另一个应用程序的 python 脚本打开 powershell.exe 到 subprocess.Popen,python 就赢了't 运行; "The term 'Python' is not recognised as the name of a cmdlet, function, script file or operable program... etc"
我反复检查了我的环境路径,python 在系统上 运行 总体上没问题。
有人知道这可能是由什么引起的吗?
subprocess.Popen(["powershell.exe", '-ExecutionPolicy', 'RemoteSigned', "path to PS1_script_with python command"])
我的 PS1 文件如下所示:
cd C:\Users\David\Geeknote\geeknote-master\geeknote
python gnsync.py --path "C:\Users\David\Desktop\C4DtoEvernote", --mask "*.nfo", --notebook "Python Logs"
function Pause{Read-Host 'You have successfully synced your C4D Annotations to Evernote using gnsync.
Please press Enter to continue...' | Out-Null}
Pause{}
似乎(无论出于何种原因)您的 $PATH
没有被进程读取或接受;因此找不到 python
。
您可以:
设置路径为
$env:Path = "C:\Python27:C:\Python27\Scripts";
使用自定义控制台配置文件(即
.ps1
文件)设置路径并使用-PSConsoleFile
. 传递它
最简单的选项,将完整路径传递到命令文件中的 Python 可执行文件
C:\Python27\python.exe gsync.py ...
我会尝试#3,然后看看您是否需要其他选项。
适当调整路径 - 特别是如果您安装了多个 Python 解释器。