我创建了循环遍历每一行的代码,files.txt
并识别文件是还是car
,并将此信息存储到. 这是通过使用命令并搜索 和 的列表来完成的。本质上代码的设计方式,它会取第一行,看看它是否可以找到字符串(如果是输出到),如果不是,它将搜索字符串(如果找到字符串,则输出to ),如果在 car.txt 或 中找不到该字符串,则将文本输出到boat
neither
SendType.txt
findstr
boat.txt
car.txt
files.txt
car.txt
car
SendType.txt
boat.txt
boat.txt
boat
SendType.txt
boat.txt
neither
SendType.txt
现在代码搜索整个字符串行。每个字符串都类似于11111_2222-22_2010-09-09_10-24-20.zip
(11111
=ID、2222-22
=model、2010-09-09
=date、10-24-20
=transaction ID)。
我想替换我当前的 findstr 行,它搜索整行,以搜索除日期部分之外的整个字符串。我在下面附上了我的代码以供参考,以及正在输入的文件的一些示例。提前致谢!
@echo off
FOR /F %%a in (files.txt) do (
findstr %%a car.txt
if errorlevel 1 (
findstr %%a boat.txt
if errorlevel 1 (
echo neither >>SendType.txt
) else (
echo boat >>SendType.txt
)
) else (
echo car >>SendType.txt
)
)
car.txt
11111_2222-22_2010-09-09_10-24-20.zip
11112_2222-11_2011-11-09_10-24-25.zip
boat.txt
11122_1111-22_2012-04-09_11-29-56.zip
11144_3333-11_2011-12-22_06-29-66.zip
files.txt
11122_1111-22_2000-01-01_11-29-56.zip
11144_3333-11_2000-01-01_06-29-66.zip
11155_1212-12_2000-01-01_11-19-69.zip
11111_2222-22_2000-01-01_10-24-20.zip
11112_2222-11_2000-01-01_10-24-25.zip
12345_2233-12_2000-01-01_07-27-44.zip
期望的输出:
SendType.txt
boat
boat
neither
car
car
neither
更新 10/15 下午 3:00 目前使用 dbenham 的代码和解析技术的方法如下:
@echo off
>SendType.txt (
for /f "tokens=1,2,3,4 delims=_" %%a in (filenames.txt) do (
findstr /c:"%%a_%%b_%%d" sneakernet.txt >nul && (echo sneakernet) || (
findstr /c:"%%a_%%b_%%d" devmed.txt >nul && (echo devmed) || echo tanto
)
)
)