中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-04 07:01
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 帮我看一下如何用FOR提取需要的内容 查看 858 回复 12
楼 主 帮我看一下如何用FOR提取需要的内容 发表于 2007-04-23 23:02 ·  中国 重庆 沙坪坝区 电信
中级用户
★★
金牌会员
积分 315
发帖 152
注册 2007-01-25 23:55
19年会员
UID 77669
性别 男
状态 离线
天慧1000(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1001咖啡(48元)棉,绣花,均码,适合胸围约85-88CM,腰围约65-70CM。白色黑色咖啡色 .jpg
天慧1001白(48元)棉,绣花,均码,适合胸围约85-88CM,腰围约65-70CM。白色黑色咖啡色 .jpg
天慧1001黑(48元)棉,绣花,均码,适合胸围约85-88CM,腰围约65-70CM。白色黑色咖啡色 .jpg
天慧1006(48元)棉,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1007绿(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。蓝色绿色.jpg
天慧1007蓝(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。蓝色绿色.jpg
天慧1013(38元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。黑色红色绿色.jpg
天慧1013绿(38元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。黑色红色绿色.jpg
天慧1022红(42元)棉,均码,适合胸围约84-88CM,腰围约65-70CM。蓝色,红色.jpg
天慧1022蓝(42元)棉,均码,适合胸围约84-88CM,腰围约65-70CM。蓝色,红色.jpg
天慧1026白(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。白色红色.jpg
天慧1026红(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。白色红色.jpg
天慧1030黑(45元).jpg
天慧1031红(45元)雪纺,均码,适合胸围约85-90CM,腰围约66-73CM。红色绿色.jpg
天慧1031绿(45元)雪纺,均码,适合胸围约85-90CM,腰围约66-73CM。红色绿色.jpg
天慧1032红(39元)棉,涤纶,均码,适合胸围约85-88CM,腰围约65-70CM。红色白色蓝色。 .jpg
天慧1035红(45元)棉,均码,适合胸围约84-88CM,腰围约65-70CM.jpg
天慧1038红(42元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。黑色红色绿色。 .jpg
天慧1038黑(42元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。黑色红色绿色。 .jpg
天慧1039白(42)雪纺适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1039黑(42元)雪纺,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1040(38元)雪纺纱,均码,适合胸围约85-88CM.jpg
天慧1041白雪纺织绒(42元)适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1042(32元)棉,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1043杏(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM。杏色.jpg
天慧1045兰(42元)雪纺,均码,适合胸围约85-88CM.jpg
天慧1046咖啡(48元)棉,涤纶,均码,适合胸围约85-88CM,腰围约65-70CM。紫色绿色咖啡色 .jpg
天慧1046紫(48元)棉,涤纶,均码,适合胸围约85-88CM,腰围约65-70CM。紫绿色咖啡 .jpg
天慧1046绿(48元)棉,涤纶,均码,适合胸围约85-88CM,腰围约65-70CM。紫色绿色咖啡色.jpg
天慧1047咖啡(45元)棉,涤纶,均码,适合胸围约85-88CM,腰围约66-71CM。红色咖啡色蓝色.jpg
天慧1047红(45元)棉,涤纶,均码,适合胸围约85-88CM,腰围约66-71CM。红色咖啡色蓝色.jpg
天慧1047蓝(45元)棉,涤纶,均码,适合胸围约85-88CM,腰围约66-71CM。红色咖啡色蓝色.jpg
天慧1048兰(48)棉,涤纶,均码,适合胸围约83-89CM,腰围约63-70CM。粉色绿色.jpg
天慧1048紫(48元)棉,涤纶,均码,适合胸围约83-89CM,腰围约63-70CM。粉色绿色.jpg
天慧1049红(38元),棉,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1049红反面(38元)棉,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1050白(38元)棉,均码,适合胸围约85-88CM,腰围约68-74CM。白色粉色黑色。.jpg
天慧1051蓝(42元)棉,均码,适合胸围约84-88CM,腰围约65-70CM。蓝色,红.jpg
天慧1052桔(45元)雪纺,均码,适合胸围约85-88CM,腰围约65-70CM纱.jpg
天慧1052蓝(45元)雪纺纺,均码,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1053(45元)棉,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1054红(39元)棉,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1059白(38元)纺真丝适合胸围约85-88CM,腰围约65-70CM,粉黑白.jpg
天慧1059粉(38元)纺真丝,适合胸围约85-88CM,腰围约65-70CM粉黑白.jpg
天慧1059黑(38元)纺真丝,适合胸围约85-88CM,腰围约65-70CM粉黑白,适合胸围约85-88CM,腰围约65-70CM.jpg
天慧1060杏(39元)丝光棉,分ML码。裙长约87CM,适合胸围约M85CM L88CM,腰围约M68CM L73CM。白色杏色.jpg
天慧1060白(39)丝光棉,分ML码。裙长约87CM,适合胸围约M85CM L88CM,腰围约M68CM L73CM。白色杏色。 .jpg
天慧1063绿(48元)雪纺,亮片。均码,适合胸围约85-90CM,腰围约65-70CM。绿色.jpg
天慧1064黑(45元)雪纺,蕾丝。均码,适合胸围约85-88CM,腰围约65-70CM。黑色.jpg
天慧1065咖啡色(45元)雪纺配蕾丝花边,均码,适合胸围约84-88CM,腰围约65-70CM.jpg
天慧1067兰(45元)雪纺配蕾丝花边,适合胸围约85-88CM,腰围约65-70CM咖啡,兰.jpg
天慧1067咖啡(45元)雪纺配蕾丝花边,适合胸围约85-88CM,腰围约65-70CM咖啡,兰.jpg



请问下如何用批处理提取我要的内容,比如说 天慧1067咖啡(45元)雪纺配蕾丝花边,适合胸围约85-88CM,腰围约65-70CM咖啡,兰.jpg 我只要 雪纺配蕾丝花边,适合胸围约85-88CM,腰围约65-70CM咖啡,兰
从“元)”那里断开。
2 发表于 2007-04-23 23:13 ·  中国 重庆 沙坪坝区 电信
中级用户
★★
金牌会员
积分 315
发帖 152
注册 2007-01-25 23:55
19年会员
UID 77669
性别 男
状态 离线
for /f "tokens=2 delims=)" %1 in (2.txt) do @echo %1 >>23.txt
pause
为什么我提取不了呢~》??
3 发表于 2007-04-23 23:51 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
%参数只能用a-z,A-Z
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
fengzi +2 2007-04-24 05:38
4 发表于 2007-04-24 00:54 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
@echo off
for /f "tokens=2 delims=)" %%i in (2.txt) do set "num=%%i"&call echo %%num:~0,-4%%>>23.txt
pause
5 发表于 2007-04-24 02:46 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
按楼主的列表,这样就OK:
@echo off
for /f "tokens=2 delims=)" %%i in (2.txt) do echo %%~ni>>23.txt
pause
6 发表于 2007-04-24 03:48 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 302
发帖 138
注册 2007-03-29 02:33
19年会员
UID 83224
性别 男
状态 离线
for /f "tokens=1,* delims=)" %%a in (1.txt) do call :need %%b将读取1.txt中每行内容")"后的内容%%b并传给:need
:need
for /f "tokens=1 delims=." %%c in ("%1") do echo %%c>2.txt在:need中用"%1"来调用%%b并去"."之前的内容输出到2.txt

[ Last edited by lililulula on 2007-4-23 at 03:26 PM ]
7 发表于 2007-04-24 04:03 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
Originally posted by lililulula at 2007-4-23 14:48:
for /f "tokens=1,* delims=)" %%a in (1.txt) do set need=%%b 取1.txt所有内容中第一个")"以后的所有内容,并将其赋给need变量
for /f "tokens=1 delims=." %%c in ("%need%") do echo %%c>2.txt 取need变量中到"."为止前的所有内容输出到 2.txt
pause

LS的自己试验一下,最后的结果只有最后一个数据出来
8 发表于 2007-04-24 04:15 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 302
发帖 138
注册 2007-03-29 02:33
19年会员
UID 83224
性别 男
状态 离线
回zh159兄,自己前面也发现了,现在已经改过来了,不过试了下你的脚本好象和我之前的一样,只能导出最后行- -,wudixin96的也是,汗.

[ Last edited by lililulula on 2007-4-23 at 03:23 PM ]
9 发表于 2007-04-24 04:22 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
关键在于%%~ni>>23.txt
10 发表于 2007-04-24 04:24 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 302
发帖 138
注册 2007-03-29 02:33
19年会员
UID 83224
性别 男
状态 离线
恩,是的~~~我粗心了
11 发表于 2007-04-24 05:18 ·  中国 广东 广州 联通
银牌会员
★★★
积分 1,206
发帖 517
注册 2007-03-25 01:18
19年会员
UID 82819
性别 男
状态 离线
呵,格式全部不一样。。。
占两个字符的有,占一个字符的也有。。
自然下面的都不行咯。
除非先进行一次替换。。。



@echo off

for /f "tokens=1,2,3,4,5 delims=)),, " %%a in (1.txt) do (
echo -------------------------------------------
echo %%a
echo %%b
echo %%c
echo %%d
echo %%e
echo -------------------------------------------
)
pause

你自己根据结果来选择需要的部分吧。。。
知,不觉多。不知,乃求知
12 发表于 2007-04-24 05:36 ·  中国 重庆 沙坪坝区 电信
中级用户
★★
金牌会员
积分 315
发帖 152
注册 2007-01-25 23:55
19年会员
UID 77669
性别 男
状态 离线
Originally posted by zh159 at 2007-4-23 10:51 AM:
%参数只能用a-z,A-Z

谢谢你了,其实我发完帖之后就将%1改了。结果可以顺利执行。。
没想到大家都很热心,在后面跟这么多回复,谢谢。
for /f "tokens=2 delims=)" %q in (2.txt) do @echo %q >>23.txt
pause
上面几未朋友的我还没有来不及试。
13 发表于 2007-04-24 12:45 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
把楼主要处理的内容存为ok.txt,生成的新文件为new.txt,代码如下:

@echo off&setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1* delims=))" %%_ in (ok.txt) do (
set str=%%`
set str=!str:.jpg=!
>>new.txt echo\!str!
)
start new.txt


To (3F)zh159:
for命令的参数并不是只能用a-z,或者A-Z这些字符,只要是ASCII码表中可见的字符,都可以作为for命令的参数,但是又由于一些特殊的符号(比如 & ^ | * %1 %2等)在批处理中的特殊作用,所以排除这些字符。例如上面这个例子。
论坛跳转: