中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-16 12:01
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]关于变量的难题,详情请入内查看。谢谢! 查看 5,386 回复 21
16 发表于 2004-11-14 00:00 ·  中国 广东 广州 联通
初级用户
积分 85
发帖 10
注册 2004-10-02 00:00
UID 32040
性别 男
状态 离线
to willsort
我没看明白,但是否有笔误,生成了Directory.bat,却没有call它,而直接del了????
17 发表于 2004-11-15 00:00 ·  中国 山西 运城 中移铁通
银牌会员
★★★
天的白色影子
积分 2,343
发帖 636
注册 2004-03-06 00:00
UID 19350
性别 男
状态 离线
Directory.bat是在~setdir.bat中调用的啊,这就是技巧之精华呀!
18 发表于 2004-11-16 00:00 ·  中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
UID 1565
性别 男
来自 河北保定
状态 离线
高手就是高手。配服ing...如果在中文版的NT环境下,可以使用chcp 437命令将命令的提示语言改为英文,另外,如果路径中带有太多空格,也是不太好解决的(不能超过8个),如果超过这个数量,就要另想办法了,可能需要用到shift命令。WillSort的批处理修改如下:
@echo off
chcp 437
dir %A% | find " Directory of ">~setdir.bat
echo set abase=%%2%%3%%4%%5%%6%%7%%8%%9 >Directory.bat
call ~setdir.bat
del ~setdir.bat
del Directory.bat
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
19 发表于 2004-11-17 00:00 ·  中国 广东 清远 电信
中级用户
★★
积分 282
发帖 52
注册 2004-09-29 00:00
UID 31947
性别 男
状态 离线
谢谢各位大侠,问题已经用STRINGS得到解决。虽然我还是不明白willsort的批处理,但还谢谢!!
20 问题可能并非如此简单 发表于 2004-11-18 00:00 ·  中国 山西 运城 联通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
UID 19
性别 男
状态 离线
Re Climbing:
可能问题并非我当初预想的那样简单。
关于中文命令行,chcp是可以改变英文代码页,但是改变了代码页,会导致无法识别中文路径,那么chcp 437变成了拆东补西。
关于文件名空格,直接导致命令行参数不适宜分析文件和路径,因为空格有单个空格,多个独立空格,多个连续空格等三种,而set abase=%%2%%3%%4%%5%%6%%7%%8%%9却将其中的空格全部滤掉了,而如果在它们之间加上空格,则可能会导致abase后跟随多余的空格,这对路径来说,也是致命的。
也许根本的解决之道,是在使用中限制多国代码和空格的使用,但是势必因此降低程序的普适范围。唯一值得安慰的是,深层批处理本就不是应用广泛的程序代码。
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
21 发表于 2004-11-19 00:00 ·  中国 河北 石家庄 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
UID 1565
性别 男
来自 河北保定
状态 离线
还是WillSort考虑的比较周详,如果路径名中带空格,我的批处理会将所有的空格去掉,这根本是没有意义的。看来还是用第三方的工具比较好一些,DOS命令的字符串处理功能实在是太弱了。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
22 发表于 2006-01-11 11:56 ·  中国 山西 临汾 联通
初级用户
积分 176
发帖 16
注册 2004-10-02 00:00
UID 32054
性别 男
状态 离线
路过,学习一下.
论坛跳转: