批处理中的“或”命令是什么?

2025-03-22 16:16:31
推荐回答(4个)
回答1:

  批处理没有正常的编程语言那么强大的条件语句及流程处理功能。对于findstr来说,确实可以用findstr "aaa bbb"表示aaa或bbb的意思,但这并不是通用的。

  1、批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。
  2、批处理文件的扩展名为bat 。目前比较常见的批处理包含两类:DOS批处理和PS批处理。PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本;而DOS批处理则是基于DOS命令的,用来自动地批量地执行DOS命令以实现特定操作的脚本。更复杂的情况,需要使用if、for、goto等命令控制程式的运行过程,如同C、Basic等高级语言一样。如果需要实现更复杂的应用,利用外部程式是必要的,这包括系统本身提供的外部命令和第三方提供的工具或者软件。批处理程序虽然是在命令行环境中运行,但不仅仅能使用命令行软件,任何当前系统下可运行的程序都可以放在批处理文件中运行。

回答2:

批处理没有正常的编程语言那么强大的条件语句及流程处理功能。对于findstr来说,确实可以用findstr "aaa bbb"表示aaa或bbb的意思,但这并不是通用的。

回答3:

本来楼上也都就所提疑问作了解答, 我这不算专门回答这个提问
有时看到楼主在帮别人解答批处理方面问题,所以举两例,没什么高难度,多写些代码自然就熟能生巧
1 对提问开始列举的这类,再多些"或"也就两句
set /a x=(a-2)*(b-3)*(c-4)
if %x% equ 0 echo yes

2 这种
if %choice% equ 1 goto :v1
if %choice% equ 2 goto :v2
也许可以简化成 goto :v%choice%

3 findstr 命令确实很费时间,但它的查找功能很强大, 它的查找表达式部分与"正则表达式"很相近,需要些时间去练习掌握,在我写过的代码中甚至有专门先用代码去设一变量组合它所需要的表达式。对于费时问题,尽量避免多循环中用,比如一长文本中有少数行需要修改,肯定就不要逐行用它来判断(这样有多少行就用了多少次),或改成if命令或宁可先整个文本用它查一遍找出符合条件的行号,(这样只用了一次这个命令),然后才展开文本据行号处理

回答4:

findstr "aaa bbb" && (....) || (....)