求教批处理高手,帮助加上IF的多个判断的语句?

if"%str1:二三=%"neq"%str1%"(gotoB)elsegotoA我用IF语句判断所拖拽的文件是否包含“二三”或者“一四”字符,如果包含就执行不同的命令,... if "%str1:二三=%" neq "%str1%" (goto B) else goto A

我用IF语句判断所拖拽的文件是否包含“二三”或者“一四”字符,如果包含就执行不同的命令,但经过实际操作发现,有的文件名写的不是“二三”而是数字的“23”或者“14”,也需要执行和带有“二三”或“一四”字符一样的命令。我如何才能加上判断是否文件名是否带有数字字符串的语句。

原文如下:请高手帮助加上,谢谢

@echo off
set "str=%~nx1"
set "str1=%str: =%"

if "%str1:二三=%" neq "%str1%" (goto B) else goto A
pause
:A
start "" "D:\常用软件\Adobe Photoshop CS6\Adobe Photoshop CS6\Photoshop.exe"
echo wscript.sleep 6000 > delay.vbs
cscript //nologo delay.vbs & del delay.vbs
call "%cd%\编辑一四图片.exe" "%str%"
echo wscript.sleep 5000 > delay.vbs
cscript //nologo delay.vbs & del delay.vbs
taskkill /t /im Photoshop.exe

:B

start "" "D:\常用软件\Adobe Photoshop CS6\Adobe Photoshop CS6\Photoshop.exe"
echo wscript.sleep 6000 > delay.vbs
cscript //nologo delay.vbs & del delay.vbs
call "%cd%\编辑二三图片.exe" "%str%"
echo wscript.sleep 5000 > delay.vbs
cscript //nologo delay.vbs & del delay.vbs
taskkill /t /im Photoshop.exe
我是用把文件拖拽到批处理上执行的。我的目的是判断文件名包含“23”或者“二三”的文件执行goto B的操作,或者文件名包含“14”或者“一四”的文件执行goto A的操作
展开
 我来答
依梦琴瑶
高粉答主

2018-01-12 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.7亿
展开全部
您这个不需要用if,直接findstr就可以实现。

echo "%str%"|findstr "23 二三" >nul && goto B || echo "%str%"|findstr "14 一四" >nul && goto A
pause
exit
更多追问追答
追问
执行不了
追答
这个只是举例。

如果您文件名中出现1和4之间有空格的,当然不会被识别,如果您需要把1 4当成14来看待,那么您得先在命令中去除相关空格。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式