中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]关于变量的难题,详情请入内查看。谢谢!
« [1] [2] »
作者:
标题: [求助]关于变量的难题,详情请入内查看。谢谢! 上一主题 | 下一主题
^_^
初级用户




积分 85
发帖 10
注册 2004-10-2
状态 离线
『第 16 楼』:  

to willsort
我没看明白,但是否有笔误,生成了Directory.bat,却没有call它,而直接del了????[em06]

[此贴子已经被作者于2004-11-14 19:44:58编辑过]




2004-11-14 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qzwqzw
银牌会员

天的白色影子


积分 2342
发帖 635
注册 2004-3-6
状态 离线
『第 17 楼』:  

Directory.bat是在~setdir.bat中调用的啊,这就是技巧之精华呀!

2004-11-15 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 18 楼』:  

高手就是高手。配服ing...如果在中文版的NT环境下,可以使用chcp 437命令将命令的提示语言改为英文,另外,如果路径中带有太多空格,也是不太好解决的(不能超过8个),如果超过这个数量,就要另想办法了,可能需要用到shift命令。WillSort的批处理修改如下:

  Quote:
@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





偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2004-11-16 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复
insert
中级用户




积分 282
发帖 52
注册 2004-9-29
状态 离线
『第 19 楼』:  

      谢谢各位大侠,问题已经用STRINGS得到解决。虽然我还是不明白willsort的批处理,但还谢谢!![em04]

2004-11-17 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 20 楼』:  问题可能并非如此简单

Re Climbing:
    可能问题并非我当初预想的那样简单。
    关于中文命令行,chcp是可以改变英文代码页,但是改变了代码页,会导致无法识别中文路径,那么chcp 437变成了拆东补西。
    关于文件名空格,直接导致命令行参数不适宜分析文件和路径,因为空格有单个空格,多个独立空格,多个连续空格等三种,而set abase=%%2%%3%%4%%5%%6%%7%%8%%9却将其中的空格全部滤掉了,而如果在它们之间加上空格,则可能会导致abase后跟随多余的空格,这对路径来说,也是致命的。
    也许根本的解决之道,是在使用中限制多国代码和空格的使用,但是势必因此降低程序的普适范围。唯一值得安慰的是,深层批处理本就不是应用广泛的程序代码。




※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2004-11-18 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 21 楼』:  

还是WillSort考虑的比较周详,如果路径名中带空格,我的批处理会将所有的空格去掉,这根本是没有意义的。看来还是用第三方的工具比较好一些,DOS命令的字符串处理功能实在是太弱了。



偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2004-11-19 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复
i386
初级用户




积分 176
发帖 16
注册 2004-10-2
状态 离线
『第 22 楼』:  

路过,学习一下.

2006-1-11 11:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: