中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-05 04:04
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » for中如何判断文件是否存在特定字符 查看 916 回复 5
楼 主 for中如何判断文件是否存在特定字符 发表于 2007-06-19 10:33 ·  中国 浙江 金华 电信
初级用户
积分 48
发帖 17
注册 2007-06-08 21:54
19年会员
UID 90724
性别 男
状态 离线
FOR /F "eol=; tokens=1,2* delims=, " %%i in (2.txt) do set flag=%%i
if "%flag%" == "2" (echo %flag%) else echo 2 >>2.txt
pause
我的大意是,当我判断2。TXT文件中有2那就显示变量,如果没有就写入一个2

有二个文件,另一个是写入1
当我不停的运行一个时不会出现错误,但当二个轮流运行时就会出现不停的写入数字

[ Last edited by bjsh on 2007-7-31 at 01:56 PM ]
2 发表于 2007-06-19 11:48 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
根据楼主的意思,是判断2.txt中的第一列是否包含2这个字符?

而且下面这段话表述不清
-----------------------------------------------------------------------------------------------------------
有二个文件,另一个是写入1
当我不停的运行一个时不会出现错误,但当二个轮流运行时就会出现不停的写入数字
-------------------------------------------------------------------------------------------------------------
3 发表于 2007-06-19 12:06 ·  中国 浙江 金华 电信
初级用户
积分 48
发帖 17
注册 2007-06-08 21:54
19年会员
UID 90724
性别 男
状态 离线
就是有二个判断,一个是判断有没有2一个是有没有1,所做的判断是分开的,但他们判断的文件是同一个。
4 发表于 2007-06-19 12:37 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
在for循环中用('findstr "2" 2.txt')替代(2.txt)
5 发表于 2007-06-19 14:52 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 302
发帖 138
注册 2007-03-29 02:33
19年会员
UID 83224
性别 男
状态 离线
@echo off
findstr /c:"2" 2.txt>nul
if %errorlevel% equ 0 findstr /c:"2" 2.txt
if %errorlevel% equ 1 (echo 2)>>2.txt
pause
6 发表于 2007-06-21 15:32 ·  中国 浙江 金华 电信
初级用户
积分 48
发帖 17
注册 2007-06-08 21:54
19年会员
UID 90724
性别 男
状态 离线
5楼的方法很好,不会出现错误,谢谢啊!
论坛跳转: