中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 10:32
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » 【分享】自认为某些命令的经典用法
可打印版本  1,070 / 2
第1楼 plp626 发表于 2008-04-26 23:44
银牌会员 发帖 1,020 积分 2,278
【分享】自认为某些命令的经典用法
不知道还有多少热情,快了...呵呵
半年了,学到了些东西,趁着现在还有热度,把这些自己认为的好方法与大家共享,算是给大家的回报。遗憾的是从头到尾还只会bat。

call的一些用法


for 的集合里,还支持复合语句:
大家不妨将if换成for在发现发现。

有关start的用法


这个 第一行语句“if not %1.==. call%*&exit”我在许多代码经常用,位置已经固化了。它使代码可读性增强许多,同时也简洁了许多。

vbs知道一点点,下面这个代码包含的混合编程的思想,和批处理技巧不可小觑:


多进程的:(这两个代码我也不知能说明什么)



如果你的机子是10核的:

多进程之间通信
现在用临时文件的方法还算可靠,修改系统环境变量的方法比如date我还没试,
另外,用exit/b?(?为0-9数字)然后用errorlevel来确定那个子过程退出的方法在简单情况下可以起这个作用。

一个进程"pause"(实际上它还是处于执行态只是执行pause命令暂停罢了),另一个进程处于执行状态,若当这个进程变为也pause时,不管这个进程的优先级有多高,按键相应第一个执行pause的进程,




关于call的用法很多,主要是参数,得把setlocal掌握好,大家有空多关注下面两个帖子。

【共同参与】"批处理函数库"
http://www.cn-dos.net/forum/viewthread.php?tid=38969&fpage=1
【共享】常用子过程、函数收集【专用帖】
http://www.cn-dos.net/forum/viewthread.php?tid=39777&fpage=2
多与别人分享,受益匪浅

[ Last edited by plp626 on 2008-4-27 at 12:04 AM ]
第2楼 bat-zw 发表于 2008-04-27 00:27
金牌会员 发帖 1,276 积分 3,105
强烈支持楼主这种精神,但保留自己对某些问题的看法。
第3楼 523066680 发表于 2008-04-29 17:15
银牌会员 发帖 1,133 积分 2,362
我发现
set a=12345
然后可以直接--
echo %a:~1,4%

之前我这个白痴一直 set a2=%a:~1,4% 然后才 echo %a2%
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023