batch:设置变量并将其与另一个进行比较

时间:2014-03-17 10:39:43

标签: bash batch-file

任务:检查 Windows 操作系统下目录中的许多文件和目录。如果数字等于某个数字,则返回0.如果不是,则返回1并退出并显示错误。

Linux 上的bash中,它可能如下所示:

$ cat a.sh
#!/bin/bash
a=`ls -l | wc -l`
[[ $a -eq 5 ]] || { echo "$a NOT equal to 6"; exit 1; }
echo "$a equal to 6"

$ ls -l | wc -l
6

$ ./a.sh
6 NOT equal to 6

我如何为 Windows 做同样的事情?

1 个答案:

答案 0 :(得分:3)

@echo off 
  setlocal
  set "number=6"
  dir /b|find /c /v ""|findstr /x /c:"%number%">nul && (echo equal to %number% & endlocal & exit /b 0)
  echo not equal to %number% & endlocal & exit /b 1