×
Autorun 病毒清除工具bat批处理教程Code Page 的概念及其设置值copydelims=和tokens=星号 的差别del的bugdir命令缺陷DOS技巧100例

常用DOS命令参数的中文详解

一、DIR 命令的格式二、attrib [+r|-r] [+a|-a] [+s|-s] [+h|-h] [d: ] [name] [/s]三、cd 介绍四、copy [/y][/-y][/v][ /B]五、xcopy命令六、 del /p七、undelete [name] /au八、deltree /y [driveath]九、dos=high[|low[umb|noumb]]十、doskey十一、emm386.exe十二、fc十三、format十四、unformat 命令十六、interlnk.exe 与intersvr.exe十七、memmaker[/batch][session][/swaprive]十八、memitem memcolor memdefault十九、mscdex.exe 提供对光驱进行读写的程序二十、msd的使用二十一、prompt dos提示符二十二、ramdrive.sys 使用内存当做虚拟盘来使用二十三、subst 将一个驱动器与一个子目录联接二十四、mem /c /m /p /d 常规内存显示程序二十五、各种管道工具的使用二十六、move 命令二十七、append二十八、二十九、device devicehigh loadhigh三十、defrag 优化磁盘DOS命令集

DOS命令字典

附:批处理命令与变量

系统外部命令(均需下载相关工具)

瑞士军刀:nc.exe扫锚工具:xscan.exe命令行方式嗅探器: xsniff.exe终端服务密码破解: tscrack.exeShutdown.exeFTP命令详解计算机运行命令全集DOS批处理实战DOS中的特殊符号findstr的命令行分析机制findstr的一些bugFINDSTR正则表达式的基本用法for的一些bugfor教程for语句中的几种分隔符形式hitme批处理集合Norton Ghost批处理命令用法详细介绍手把手教你写批处理set 命令

for的一些bug



  1、关于冒号:当某行内容以 : 打头时,用 for /f "tokens=1* delims=:" %%i in ('findstr /n .* test.txt') do echo.%%j 会把 : 过滤掉;


  2、关于分号:findstr .* test.txt 可以把以分号打头的行完整显示出来,但是,用在for语句中就不能找到了,必须加上参数/n才可以,似乎是for语句会把以分号打头的行当作注释内容忽略掉,好象不是findstr的错;而不放在for语句中的 type、more和findstr都是可以的;


  解决问题1和问题2的方案有:


稍微复杂一点的:


@echo off

:: 不会忽略空行

for /f "delims=" %%i in ('findstr /n .* test.txt') do (

    set "str=%%i"

    call set "str=%%str:*:=%%"

    call echo "%%str%%"

)

pause


最简洁的:


@echo off

:: 此代码会忽略空行

for /f "delims= eol=" %%i in (test.txt) do echo %%i

pause



  3、在for扩展中,%%~si 表示扩充的路径只含短文件名,但是在以下的测试过程中,却发现真正的情况并非如此:


  测试环境:

--------------------------------------------------------------------------------

D:abcdefg hijkabcd efgh.txt

D:abcdefg hijkte st.txt


  测试代码:

--------------------------------------------------------------------------------

@echo off

for /f "delims=" %%i in ('dir /a /b *.txt') do echo %%~si

pause


  测试结果:

--------------------------------------------------------------------------------

D:ABCDEF~1ABCDEF~1.TXT

D:ABCDEF~1TEST~1.TXTtxt


  看到测试结果的最后一条记录了吗?居然扩展到了 TEST~1.TXTtxt !


  总结了一下出错的情形,似乎是这样的:当路径中有超过一个的地方因为目录名超过11个字符而扩充到短文件名的时候,文件名+后缀名 少于11个字符且带空格的文件就会发生扩展错误。


                                                           —— namejm



分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)