找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: 随风

[原创] 提高批处理代码效率的常用技巧及方案1[20090607]

[复制链接]
发表于 2010-1-25 13:04:04 | 显示全部楼层
请教这个 "set . "  没看明白. 还有代码中的 call 这一句为什么能够输出...
  1. @echo off&setlocal enabledelayedexpansion
  2. :loop
  3. set /a n+=1
  4. for /f "tokens=%n%" %%a in (a.txt) do (
  5.    set /a m+=1
  6.    call set .!n!=%%.!n!%% %%a
  7. )
  8. if !n! lss 3 goto loop
  9. set .
  10. pause
复制代码
发表于 2010-1-25 13:16:18 | 显示全部楼层

回复 16楼 的帖子

看看set的帮助:

SET command invoked with just a variable name, no equal sign or value
will display the value of all variables whose prefix matches the name
given to the SET command.  For example:

    SET P

would display all variables that begin with the letter 'P'

评分

参与人数 1PB +6 +1 收起 理由
a590687 + 6 + 1 非常感谢.

查看全部评分

发表于 2010-1-25 13:21:00 | 显示全部楼层

回复 17楼 的帖子

哦. 一点通 .
之前没看明白,其实是 后面的 "set . "输出的结果 ~所有以"."打头的变量.   开始以为是call那一句输出的程序结果,. 呵呵.

真是一语惊醒梦中人啊 谢谢

补充;这类事件的发生都是因为 我对命令的不完全熟悉导致的. 看来对任何一个命令都很有必要去了解她的全部使用方法. 一知半解可是要不得的.

[ 本帖最后由 a590687 于 2010-1-25 13:25 编辑 ]
发表于 2014-12-26 17:28:05 | 显示全部楼层
看了一下,受益匪浅,其实感觉你说的,我在平常的批处理学习,以及测试中,都遇到过,也深有感触,谢过。
发表于 2022-8-21 23:10:04 | 显示全部楼层
学习,精品教程,以前从来没注意过代码效率,只要能完成任务就好,以后得注意了
发表于 2022-9-6 19:55:31 | 显示全部楼层
现在看了这个帖子,知道了如何提高代码的效率
发表于 2022-12-11 15:17:53 | 显示全部楼层
这个贴好
关羽姓什么?
发表于 2023-1-19 22:50:06 | 显示全部楼层
请教这个 "set . "  没看明白. 还有代码中的 call 这一句为什么能够输出...
a590687 发表于 2010-1-25 13:04
  1.     call set .!n!=%%.!n!%% %%a
复制代码
这一行的call set .!n!……的“.”是代表什么呢?请教了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 22:41 , Processed in 0.012288 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表