这个批处理文件中的"&&"是什么?

Kit*_*Kit 28 batch-file

我从一个回答我的一个问题的人那里收到了一行代码,但我很困惑:"&&"在这个批处理文件中做了什么.

@echo off
set /p Quest="How are you today? "
echo %Quest% > Results.txt
findstr /r /i "not.*good not.*well" Results.txt >nul && echo Sorry && goto pause
findstr /i "good well" Results.txt >nul && echo My day is doing good as well
:pause
pause
Run Code Online (Sandbox Code Playgroud)

小智 71

&    separates commands on a line.

&&    executes this command only if previous command's errorlevel is 0.

||    (not used above) executes this command only if previous command's errorlevel is NOT 0

>    output to a file

>>    append output to a file

<    input from a file

|    output of one command into the input of another command

^    escapes any of the above, including itself, if needed to be passed to a program

"    parameters with spaces must be enclosed in quotes

+ used with copy to concatenate files. E.G. copy file1+file2 newfile

, used with copy to indicate missing parameters. This updates the files modified date. E.G. copy /b file1,,

%variablename% a inbuilt or user set environmental variable

!variablename! a user set environmental variable expanded at execution time, turned with SetLocal EnableDelayedExpansion command

%<number> (%1) the nth command line parameter passed to a batch file. %0 is the batchfile's name.

%* (%*) the entire command line.

%<a letter> or %%<a letter> (%A or %%A) the variable in a for loop. Single % sign at command prompt and double % sign in a batch file.
Run Code Online (Sandbox Code Playgroud)

  • 很棒的信息,但是来源是什么? (7认同)
  • 它来自哪里? (4认同)

Som*_*ark 48

&&当第一个命令成功返回时,或者错误级别为0时,在该行上运行第二个命令.相反的&&||,当第一个命令不成功或者错误级别为1时,它运行第二个命令.

  • 这是Win XP(lol)的参考页面,但仍包含有用的信息.http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds_shelloverview.mspx?mfr=true (4认同)
  • @Spandy:https://web.archive.org/web/20060412075633/https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds_shelloverview.mspx?mfr=true (3认同)
  • @user4317867 链接已损坏 (2认同)
  • 所有这些内容都在 ss64.com https://ss64.com/nt/syntax-conditional.html 和 https://ss64.com/nt/syntax-redirection.html 上 (2认同)
  • 注意单个“&amp;”,它可以工作,但不会检查上一个命令是否成功。 (2认同)