在 BAT 文件中使用 IF stmt 获取和测试字符串

问题描述 投票:0回答:1

如果我运行这个命令

attrib "[path\filename]"

在我可能得到的 bat 文件中 A R [路径文件名] 如何使用 IF stmt 来测试 R ? 如果存在,我想退出。 如果不是我继续 BAT 文件

我不知道该去哪里

if-statement batch-file attributes
1个回答
0
投票
attrib * |findstr /b /R ".....R">nul
if not errorlevel 1 echo Read-only item found

在哪里

*
测试任何文件,如果您愿意,可以用
"[path\filename]"
替换。

这会在报告行的第六列中寻找一个

R
/b
在行的开头选择一个匹配项;
/R
强制“正则表达式”(实际上,这是默认值),
".....R"
表示 5*(任何字符)+R。

注意,如果

findstr
成功找到匹配项,则
errorlevel
设置为
0
;否则,非零和
if errorlevel n
表示“如果错误级别为n或大于n

注意:如果您的目标不存在,

findstr
将不会被执行,因此
errorlevel
将保持在
attrib
被执行之前的状态。

您可以使用

测试目标的存在
if exist ...

万物。

© www.soinside.com 2019 - 2024. All rights reserved.