[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
第四题正确答案
  1. @echo off
  2. for /f "tokens=2,5,8 " %%a in (tt.txt) do echo %%a %%b %%c
  3. pause
复制代码

TOP

B1 答案
  1. @echo off
  2. for /f "tokens=1 delims=。" %%a in (ss.txt) do echo %%a
  3. for /f "tokens=2 delims=。" %%b in (ss.txt) do echo %%b
  4. pause
复制代码
是以一个句号为一句的显示,想分成四段来着,暂时没搞定

TOP

B2 答案
  1. @echo off
  2. for /r c:\ %%a in (*myplayer) do echo %%a
  3. pause
复制代码

TOP

我来做一下第二套 B3题:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set var=
  4. for /l %%i in (100 -2 0) do (
  5. set a=%%i
  6. echo !a!
  7. set a=+!a!
  8. set var=!var!!a!
  9. set var=!var: =!
  10. )
  11. set /a b=0+!var!
  12. echo 数值之和是:!b!
  13. pause
复制代码

TOP

B3 答案
  1. @echo off
  2. for /l %%a in (100,-2,0) do set /a sum+=%%a
  3. echo %sum%
  4. pause
复制代码

TOP

B4 答案
  1. @echo off
  2. for /f "tokens=5 delims=“” " %%a in (yy.txt) do echo %%a
  3. pause
复制代码
通过这个例子才明白,delims就是根据某个分隔符把某行分成几段,然后,根据某段来进行提取。很好的例子

TOP

本帖最后由 cjiabing 于 2011-8-18 12:42 编辑

回复 250# kevinak

B1题:
    鼓励一下,至少你已经成功了一半。
    懂得“输出变量”吗?再仔细阅读帮助信息,稍微改动一下你就可以完成了。
    其实,用一个FOR就可以完成了。
B2题:
    注意,还有显示文件名、路径名、和后缀名。
B3题:
    很好。
B4题:
    很好。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

回复 252# 545810831


    请向楼下学习一下。虽然你很辛苦地写出来了,不过还需要加强。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

B5 答案
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "skip=2 tokens=2 delims=:" %%a in (ip.txt) do (
  4. set /a n+=1
  5. if !n!==1 set a=%%a
  6. )
  7. echo %a%
  8. pause>>nul
复制代码
这个写完我自己也有点晕。不过,现在有些明白了。
1

评分人数

    • cjiabing: 勤奋学习,孜孜不倦!~PB + 6

TOP

B6 答案
  1. @echo off
  2. for /f "usebackq tokens=*" %%a in ("%programfiles%\Windows Media
  3. Player\eula.txt") do echo %%a
  4. pause>>nul
复制代码

TOP

回复 257# kevinak
额,谢谢提出的建议。我再研究研究

TOP

第六题理解错误。重来...

TOP

B1 答案
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1,2,3,4 delims=,。" %%a in (ss.txt) do (
  4. set a=%%a
  5. set b=%%b
  6. set c=%%c
  7. set d=%%d
  8. )
  9. echo %a%
  10. echo %b%
  11. echo %c%
  12. echo %d%
  13. pause >nul
复制代码
这个代码是把"床前明月光,疑是地上霜。举头望明月,低头思故乡。"分成四段来显示的。
还有,谢谢版主的提示。不知道这样写会不会显得臃肿或者复杂,额,能力有限哈..

TOP

本帖最后由 cjiabing 于 2011-8-22 16:10 编辑

回复 261# kevinak


    你还是没有弄清楚什么是输出变量呢。直接在cmd窗口执行:
  1. for /f "tokens=1,2,3,4 delims=,。" %a in ("床前明月光,疑是地上霜。举头望明
  2. 月,低头思故乡。") do echo %a&echo %b&echo %c&echo %d
复制代码

如果不考虑标点符号可以更加简单:
  1. for  %a in (床前明月光 疑是地上霜 举头望明月 低头思故乡) do echo %a
复制代码

这是我出题的初衷,但忘记有标点符号了。你们随意做了。将标点符号改成英文的也可以:
  1. for  %a in (床前明月光,疑是地上霜,举头望明月,低头思故乡.) do echo %a
复制代码
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

B2 答案
  1. @echo off
  2. for /r c:\ %%a in (*mplayer) do echo %%~pnxa
  3. pause >nul
复制代码
这是在别处摘抄的:
%%~pi 将%i扩充到一个路径
%%~ni 将%i扩充到一个文件名
%%~xi 将%i扩充到一个文件扩展名
可以组合..

TOP

返回列表