[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
这篇学习心得写得不错,将自己整个学习思索的过程描述得很清楚,可以为新手学习所借鉴。
学习就是要有这样的态度,这样才能学到真东西,希望新手们都能学习楼主这种认真扎实的学
习精神,如此是批处理之幸也。
***共同提高***

TOP

用以下办法兼容文本中有!的情况:
  1. @echo off
  2. set /p n=请输入要忽略的行数:
  3. for /f "delims=" %%a in (a.txt) do (
  4.     if defined _%n% call,echo %%_%n%%%
  5.     for /l %%b in (%n% -1 2) do (
  6.         set /a str=%%b-1
  7.         setlocal enabledelayedexpansion
  8.         for %%c in (!str!) do endlocal&call,set "_%%b=%%_%%c%%"
  9.     )
  10.     set "_1=%%a"
  11. )
  12. pause>nul
复制代码
***共同提高***

TOP

或者干脆这样:
  1. @echo off
  2. set /p n=请输入要忽略的行数:
  3. for /f "delims=" %%a in (a.txt) do (
  4.     if defined _%n% call,echo %%_%n%%%
  5.     for /l %%b in (%n% -1 2) do (
  6.         set /a str=%%b-1
  7.         call,call,set "_%%b=%%%%_%%str%%%%%%"
  8.     )
  9.     set "_1=%%a"
  10. )
  11. pause>nul
复制代码
***共同提高***

TOP

但以上两种方法都是以降低代码效率为代价来兼容!字符的,个人建议如要兼容特殊字符还是采用别的办法吧!
***共同提高***

TOP

返回列表