Batch file Findstr不适用于SET/P?
我有一个批处理文件,其部分如下所示:Batch file Findstr不适用于SET/P?,batch-file,findstr,Batch File,Findstr,我有一个批处理文件,其部分如下所示: rem @echo off cd C:\Program Files\CA\AllFusion Gen\GEN\test8.ief\c\ FINDSTR /C:"'V1600 OPER'" /C:"'V1714 OPER'" /C:"'V1801 OPER'" /C:"'V1901 OPER'" "MPOAD10C" 上述批处理文件使用上述代码成功运行。但是,当我修改脚本以便用户可以输入两个变量时,如下图所示((%path%=tes
rem @echo off
cd C:\Program Files\CA\AllFusion Gen\GEN\test8.ief\c\
FINDSTR /C:"'V1600 OPER'" /C:"'V1714 OPER'" /C:"'V1801 OPER'" /C:"'V1901 OPER'" "MPOAD10C"
上述批处理文件使用上述代码成功运行。但是,当我修改脚本以便用户可以输入两个变量时,如下图所示((%path%=test8.ief,%file\u name%=MPOAD10C),它抛出以下错误:
“FINDSTR”不被识别为内部或外部命令、可操作程序或批处理文件
rem @echo off
SET /P path=Enter name of IEF folder:
echo. && echo.
SET /P file_name=Enter name of file:
echo. && echo.
cd C:\Program Files\CA\AllFusion Gen\GEN\%path%\c
FINDSTR /C:"'V1600 OPER'" /C:"'V1714 OPER'" /C:"'R18 V1801 OPER'" /C:"'V1901 OPER'" "%file_name%"
我还在环境变量的PATH变量中输入了值“C:\WINDOWS\system32”
我对批处理脚本非常陌生。请帮忙。提前谢谢
问候,,
Mohit Gupta.不要将
path
用作您自己的变量之一,Windows会使用该特定环境变量来定位可执行文件,如您刚刚发现的findstr
将其更改为类似于
mypath
的内容,您的问题就会消失。不要将path
用作您自己的变量之一,Windows会使用该特定环境变量来定位可执行文件,如您刚刚发现的findstr
将其更改为类似于
mypath
的名称,您的问题就会消失。若要解决此问题,请使用%PATH%
以外的名称来捕获用户的输入
%PATH%
是一个特殊的控制变量。当您使用集合/P
修改%PATH%
时,您将更改命令解释器将查找FINDSTR
的位置。它在%PATH%
的新位置找不到FINDSTR.EXE
,因此出现错误“'FINDSTR'未被识别为内部或外部命令”若要解决此问题,请使用%PATH%
以外的名称捕获用户的输入
%PATH%
是一个特殊的控制变量。当您使用集合/P
修改%PATH%
时,您将更改命令解释器将查找FINDSTR
的位置。它在%PATH%
的新位置找不到FINDSTR.EXE
,因此出现错误“FINDSTR”不能识别为内部或外部命令”