基于条件的失败脚本

时间:2019-05-29 22:37:51

标签: batch-file cmd windows-10

如果列表文件包含多于一行的数据,如何强制批处理脚本以失败告终?

In BASH, I would try this -


...
...
rowcnt=$(wc -l $HOME/files/mytestfile.txt)
if [ $rowcnt -gt 1 ]; then 
  exit 1
fi
...
...

我能够在DOS脚本编写方面取得一些进展,但还不是很多。

当直接在操作系统提示符下运行时,以下命令将返回 3 -

C:\> type myalias.bat|find /v /c ""

我使用以下代码创建了脚本 test4rowcnt.bat -

@echo off
echo before
set rowcnt=type myalias.bat|find /v /c ""
echo after
echo %rowcnt%
if %rowcnt% gtr 1 (
echo More files
exit /b 1 
) else ( 
echo all ok 
)

上面的脚本返回了以下内容-

C:\Users\SJ> test4rowcnt.bat
before
0
after
1
myalias.bat was unexpected at this time.

C:\Users\SJ> echo %errorlevel% 
0

我在批处理脚本中添加了一些其他的ECHO,可以将其忽略。

0 个答案:

没有答案