[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
hello123world敢提qzwqzw敢说,倡导自由的讨论环境。找茬就不大好了,找不足还好,希望对作者有改进,对读者负责。大家继续!~
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

回复 15# qzwqzw


    第一、获得全局设置,比如变量延迟、@echo off等。
    第一、界定行。一个命令一行。区别如FOR、IF、()等可以跨行的,以及标签等。获得和界定“行”应该是最基本的。
    第三、处理行。如你说的,将一行命令分解为几个命令,像&、|等。因为区分不同的命令才能执行不同的命令,这是必须的。在处理单行时,可能是利用了两个命令之间的属性进行区分,比如,利用&能够很快地区分前后两段内容,因此,else和&的意思都是一样的。
    第四、处理命令。处理某个命令,或某个命令组合。获得命令执行的环境、变量、对象、过程和结果等。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

回复 17# cjiabing
没想到
我那天的“梦话”都会有人回复
你所说的几点很有条理
我总体上是同意的

只是cmd的语句分析自有其复杂之处
他的词法分析和解析调用动作不会完全依照那个流程
这主要包括对嵌套的()的处理
对& | && || 的处理
天的白色影子

TOP

本帖最后由 CrLf 于 2012-6-16 01:10 编辑

回复 7# qzwqzw


  来个淫荡解:
  1. for /f eol^= %%a in (";test") do echo %%a
复制代码
见此贴第五部分:http://bbs.bathome.net/viewthread.php?tid=15748
1

评分人数

    • qzwqzw: 多谢提醒!PB + 8 技术 + 1

TOP

看都看不怎么懂,哪来找茬,嘎嘎

TOP

我用for /r 命令为什么可以查到隐藏文件夹呢

TOP

回复 21# 戴娜拉


    可能你刚好打开显示系统隐藏文件功能了^
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

@echo off start attrib c: d: e: f:
attrib c: d: e: f: *.ini
for %%I in (*.ini) do attrib %%I
echo on
pause

TOP

回复 23# zh_1452


    关于attrib命令的使用请查询本版块教程资料,或者直接查询attrib/?
  1. C:\Users\Administrator>attrib/?
  2. 显示或更改文件属性。
  3. ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I]
  4.        [drive:][path][filename] [/S [/D] [/L]]
  5.   + 设置属性。
  6.   - 清除属性。
  7.   R 只读文件属性。
  8.   A 存档文件属性。
  9.   S 系统文件属性。
  10.   H 隐藏文件属性。
  11.   I 无内容索引文件属性。
  12.   [drive:][path][filename]
  13.       指定 attrib 要处理的文件。
  14.   /S 处理当前文件夹及其所有子文件夹中的匹配文件。
  15.   /D 也处理文件夹。
  16.   /L 处理符号链接和符号链接目标的属性。
复制代码

学批处理要有两个思想:
一是找正确的资料学习,不要乱写、瞎蒙。
二是写代码运行测试,不要想当然,写出来了以为就可以运行了,可以实现目的了。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

本帖最后由 只是时间问题 于 2015-6-17 16:13 编辑

for /f  读取 text 内容  以行为单位  行中出现空格 则当前行空格后面的内容读取不到
例如: test.txt
论坛的目标 是:不求最大,但求最好,做最实用的批处理论坛。
论坛地 址:bbs.bathome.net。
这里 是:新手晋级的福地,高手论剑的天堂。
@echo off
for /f %%i in (test.txt) do echo %%i
pause
输出结果为
论坛的目标
论坛地
这里


其实我想知道如何排除空格读取全部信息,不然出现空格读取不完全 或者截断不完全 有何意义?

TOP

感谢分享!
Live long and prosper

TOP

也没找出多少茬,O(∩_∩)O~

TOP

谢谢你们的分享  ~~~~~~

TOP

本帖最后由 aries215 于 2020-6-14 17:50 编辑

2.错误之处:“仅仅为了匹配第一层目录而存在:for /d” 整节内容,不知 for /d /r 可以枚举目录,说乏善可陈,多次抒情表达遗憾。
3.改正:重写。
4.详述理由:经测试,for /d /r 能枚举目录:
  1. for /d /r %%i in (*) do echo %%i
复制代码

TOP

返回列表