批处理判断指定字符串之后的内容,是否为空?
比如1.txt里内容为a=123b=c=321怎么判断b=之后的内容是否为空,for/f"tokens=2delims=="%%iin(1.txt)doecho%%i这样...
比如1.txt里内容为
a=123 b= c=321
怎么判断b= 之后的内容是否为空,
for /f "tokens=2 delims==" %%i in (1.txt) do echo %%i
这样显示不出任何内容.
for /f "tokens=2 delims==" %%i in (1.txt) do echo %%i>2.txt
这样也写不出2.txt这个文本.
请问该怎么写啊? 展开
a=123 b= c=321
怎么判断b= 之后的内容是否为空,
for /f "tokens=2 delims==" %%i in (1.txt) do echo %%i
这样显示不出任何内容.
for /f "tokens=2 delims==" %%i in (1.txt) do echo %%i>2.txt
这样也写不出2.txt这个文本.
请问该怎么写啊? 展开
5个回答
展开全部
for /f "tokens=2 delims==" %%i in (1.txt) do if exist %%i echo %%i else echo 内容为空
还有很多种方法来判定空格的存在 不知道你具体要求什么 有疑问请追加
还有很多种方法来判定空格的存在 不知道你具体要求什么 有疑问请追加
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
批处理中如何判断参数中含有某些字符串?,批处理参数
批处理中如何判断参数中含有某些字符串?
一般情况判断完全匹配的时候用==
复制代码 代码如下:
@echo off
if "%1"=="abc" @echo OK
但是部分匹配怎么写呢?比如判断参数中前三个字符是"abc"时
复制代码 代码如下:
@echo off
echo %1|findstr "^abc" >nul
echo %errorlevel%
测试结果如下:
C:\>test xixi
1
C:\>test
1
C:\>test abcd
0
C:\>test xabcd
1
非常感谢,但是这样怎么实现if else的效果呢?
比如
if "%1"含有"abc" @echo OK
if "%1"含有"def" @echo NG
复制代码 代码如下:
@echo off
echo %1|findstr "^abc" >nul
if %errorlevel% equ 0 (
echo ok
) else (
echo not ok
)
BAT批处理,怎判断变量中,是否包含了指定的字符串?
@echo off
set "变量1=abcdefghijklmnopq"
set 返回代码=
echo %变量1%|findstr /c:"abc">nul 2>nul&&set 返回代码=true||set 返回代码=false
在dos批处理中,怎判断一个字符串里是否含有一个特定字符?
echo abcdefghi | find "bcd" && echo 有bcd关键字符
批处理中如何判断参数中含有某些字符串?
一般情况判断完全匹配的时候用==
复制代码 代码如下:
@echo off
if "%1"=="abc" @echo OK
但是部分匹配怎么写呢?比如判断参数中前三个字符是"abc"时
复制代码 代码如下:
@echo off
echo %1|findstr "^abc" >nul
echo %errorlevel%
测试结果如下:
C:\>test xixi
1
C:\>test
1
C:\>test abcd
0
C:\>test xabcd
1
非常感谢,但是这样怎么实现if else的效果呢?
比如
if "%1"含有"abc" @echo OK
if "%1"含有"def" @echo NG
复制代码 代码如下:
@echo off
echo %1|findstr "^abc" >nul
if %errorlevel% equ 0 (
echo ok
) else (
echo not ok
)
BAT批处理,怎判断变量中,是否包含了指定的字符串?
@echo off
set "变量1=abcdefghijklmnopq"
set 返回代码=
echo %变量1%|findstr /c:"abc">nul 2>nul&&set 返回代码=true||set 返回代码=false
在dos批处理中,怎判断一个字符串里是否含有一个特定字符?
echo abcdefghi | find "bcd" && echo 有bcd关键字符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般要再套一层循环 即外层以空分隔内层以等号分隔
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
@echo off
set a=
if "%a%"=="" echo 为空
pause
set a=
if "%a%"=="" echo 为空
pause
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询