Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如果需要,如何正确使用批次?_Batch File_If Statement - Fatal编程技术网

Batch file 如果需要,如何正确使用批次?

Batch file 如果需要,如何正确使用批次?,batch-file,if-statement,Batch File,If Statement,我正在尝试对用户进行预测试,看看他们是否安装了python 他们的电脑 首先,它将检查python是否正确安装,如果没有,它将测试python是否丢失,路径是否中断,如果两者都为false,它将询问您是否要下载python,如果是,它将转到网站。我觉得我应该改成goto语句 @echo off color 0E ::check for python python --version >nul IF ERRORLEVEL 1 ( color 04 IF EXIST "C:\User

我正在尝试对用户进行预测试,看看他们是否安装了python 他们的电脑

首先,它将检查python是否正确安装,如果没有,它将测试python是否丢失,路径是否中断,如果两者都为false,它将询问您是否要下载python,如果是,它将转到网站。我觉得我应该改成
goto
语句

@echo off
color 0E

::check for python
python --version >nul
IF ERRORLEVEL 1 ( color 04
    IF EXIST "C:\Users\%USERNAME%\AppData\Local\Programs\Python" ( color 04
        echo Your Python is installed but not in the path.
        ) ELSE ( color 04
        echo Python is not installed on your PC, would you like to download it?
        )
    echo .
    echo Failed to Launch!
    )
pause

为了测试,我删除了python的路径,但它没有看到我的文件夹,跳过询问是否要下载

你的if没有问题。真正的问题是什么?为了测试,我删除了python的路径,但它没有看到我的文件夹,跳过询问我是否要下载。这是重要的信息,为什么不在问题中包括?输入、预期行为和程序输出必须被描述您说您删除了python的
路径
-您是从
路径
变量中删除了目录还是删除了
“C:\Users\%USERNAME%\AppData\Local\Programs\python”
目录?(建议-只需暂时将目录重命名为…\something,以避免重新安装-这将确保
python.exe
存在的位置不在
路径上。[触发失败]并且它不存在于预期的目录中,然后将批处理中检查的目录更改为…\something,以便查找的目录存在)为什么
%LOCALAPPDATA%\Programs\Python“
目录?Python可以安装在其他地方。选中
where/R c:\python.exe