Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.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 尝试使用if命令检测set命令的某些部分_Batch File - Fatal编程技术网

Batch file 尝试使用if命令检测set命令的某些部分

Batch file 尝试使用if命令检测set命令的某些部分,batch-file,Batch File,我使用set命令和if命令来检测您键入的内容,以决定下一步的操作: @ echo off color 4A echo Hello! pause >nul echo Who are you? set /p name="name:" echo Hello, %name%! pause >nul 问题是: set /p talk="talk here:>" if %talk%="hello" echo Hello! 当然有 pause >nul cls 最后,这不是问题所

我使用set命令和if命令来检测您键入的内容,以决定下一步的操作:

@ echo off
color 4A
echo Hello!
pause >nul
echo Who are you?
set /p name="name:"
echo Hello, %name%!
pause >nul
问题是:

set /p talk="talk here:>"
if %talk%="hello" echo Hello!
当然有

pause >nul
cls
最后,这不是问题所在。 当它说>,我输入hello,但它不工作。它只是关闭文件。如果我打字 否则,例如

然后它说

Hello! was not expected at the time
然后关闭。我如何让它检测到我说了你好,并用你好来回应呢?
请帮忙

你的
pause>NUL
似乎在做一些奇怪的事情。试试这个:

@echo off
echo Hello!
pause >nul
echo Who are you?
set /p name="name:"
echo Hello, %name%!
pause >nul
set /p talk="talk here:>"
if "%talk%"=="hello" echo Hello!
@echo off
echo Hello!
pause >nul
echo Who are you?
set /p name="name:"
echo Hello, %name%!
pause >nul
set /p talk="talk here:>"
if "%talk%"=="hello" echo Hello!