中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-06 17:52
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]一个读取文件名并压缩的问题 查看 663 回复 4
楼 主 [求助]一个读取文件名并压缩的问题 发表于 2007-11-28 16:52 ·  中国 上海 电信
初级用户
积分 35
发帖 25
注册 2007-11-28 16:26
18年会员
UID 104069
性别 男
状态 离线
我对dos不熟悉,所以请DX帮忙。

问题是这样的假设文件夹
D:\cisco\demo\Job\outgoing
内有四个txt文件,文件名分别为:
jabil_pen_ASNH084626.txt
jabil_pen_ASND084626.txt

jabil_pen_ASNH084627.txt
jabil_pen_ASND084627.txt
文件名.txt左面的6位是辨别文件名的数字编号。
现在我需要写个bat程序,它能自动识别左面的6为数字号码,比如上面四个文件的数字号码是084626,084627。
读出这两个号码后程序自动调用winzip的wzzip程序,将四个txt文件按相同的数字号码压缩成
jabil_pen_ASN084626.zip和jabil_pen_ASN084627.zip

麻烦DX们帮助!谢谢!!!

[ Last edited by oozic on 2007-11-28 at 08:59 PM ]
2 发表于 2007-11-28 23:47 ·  中国 北京 中国科学院研究生院玉泉四公寓
银牌会员
★★★
积分 1,187
发帖 555
注册 2006-12-21 07:35
19年会员
UID 74129
性别 男
状态 离线
winrar 可以不~~??
3 发表于 2007-11-29 09:41 ·  中国 上海 电信
初级用户
积分 35
发帖 25
注册 2007-11-28 16:26
18年会员
UID 104069
性别 男
状态 离线
可以只要能实现:P
4 发表于 2007-11-29 10:01 ·  中国 北京 华为云
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
@echo off
for %%i in (*.txt) do (
set str=%%~ni
call "%programfiles%\winrar\winrar.exe" -o+ a "%%str:~0,-7%%%%str:~-6%%" *%%str:~-6%%.txt
)
pause
5 发表于 2007-11-29 10:49 ·  中国 上海 电信
初级用户
积分 35
发帖 25
注册 2007-11-28 16:26
18年会员
UID 104069
性别 男
状态 离线
谢谢abcd

原来dos的批处理这么强,很不错!速度很快
我导还想写程序来做这个呢。

winzip现在也可以用啦
@echo off
for %%i in (*.txt) do (
set str=%%~ni
call "wzzip" "D:\cisco\demo\Job\outgoing\%%str:~0,-7%%%%str:~-6%%.zip" D:\cisco\demo\Job\outgoing\*%%str:~-6%%.txt
)
exit
论坛跳转: