2015-10-20 51 views
0

我的Python安装:自动确定python exe路径并在批处理文件中相应地设置环境变量?

C:\Python27\python.exe

我需要通过设置环境变量 指向Python的exe文件运行从批处理文件的Python脚本。 更新:基于响应在这里,我发现,在注册表中的安装目录有:

HKLM\SOFTWARE\Wow6432Node\Python\PythonCore\2.7\InstallPath

与名称:默认值和数据:C:\ Python27 \

现在,乳宁批处理命令是这样的:

for /f "tokens=*" %%A in ('REG QUERY "HKLM\SOFTWARE\Wow6432Node\Python\PythonCore\2.7\InstallPath" /v Default') DO (
    set CHESSPYTHONPATHv1=%%B) 

给出错误:

The System was unable to find specified registry key or value.

Q1)什么我做错了什么? Q2)这仍然需要通过手动查看注册表来了解版本号。 如果批处理文件要在另一台PC上运行,并使用不同的Python版本,则会失败。我如何指定确定安装版本的注册表搜索路径?
谢谢
sedy

+1

查看软件包“os”;包的__path__属性是一个巨大的帮助。 – Prune

回答

1

我假设你需要批量做所有事情。您可以尝试以下操作:

@echo off 
for /f "delims=" %%a in ('REG QUERY "HKLM\SOFTWARE\Python\PythonCore" /s ^| findstr InstallPath') do (
    set key=%%a 
    goto :endfor 
) 
:endfor 
for /f "tokens=2*" %%a in ('REG QUERY %key% /ve') do set "CHESSPYTHONPATHv1=%%~bpython.exe" 
echo %CHESSPYTHONPATHv1% 

第一个注册表查询中的第一个结果应该包含InstallPath。第二个查询检索Python路径。

+0

谢谢..works就像一个魅力(只需要改变一点64位Win) – user915783

相关问题