批处理删除重复行的代码看不懂,求教?
刚开始学习批处理,很多东西都看不明白,请教大家,
批处理之家的一个删除文本中重复行的帖子,内容如下:
有a.txt文件:
第一行
第一行
第二行
第二行
第二行
第二行
第三行
第三行
第三行
第二行
第三行
第二行
第四行
第四行
第四行
第五行
第四行
运行批处理后得到结果:
第一行
第二行
第三行
第四行
第五行
cd.>b.txt
set /a n=1
for /f %%a in (a.txt) do echo %%a>b.txt&&goto cmit
:cmit
for /f "skip=%n%" %%a in (a.txt) do (
setlocal enabledelayedexpansion
set /a n+=1
for /f %%b in (b.txt) do if "%%b"=="%%a" goto cmit
echo %%a>>b.txt
)
pause
上面这段代码看不明白,
1.是段落里几个for是啥关系。一层一层相互嵌套?
2.是这段代码删除重复行是啥思路?先从a.txt中取出每一行,然后和a.txt中所有行进行对比?
答案或建议:
第一个for的作用,只是取“第一行”放入b.txt,然后控制权交给后面,没有嵌套关系
第二个for的作用是主要的,获取除a.txt除第一行外的所有行,有嵌套关系
第三个for的作用,跳过b.txt中已经有的行
你运行下,看看屏幕显示就知道了
链接地址:http://www.baikewenda.com/h/1201/a30215.html
内容推荐:
推荐内容
·怎样才能把谷歌地球5.0装入D盘?
·意外断电导致TF卡不能使用怎么办?
·windows7下如何建立快速启动栏
·怎么压缩QQ聊天记录?
·MACBOOK管理员密码忘记的解决办法?
·Win7桌面上的程序快捷方式全都打不开了,怎么办?
·怎么从电路中找出损坏的电子元件
·VMware中如何添加本地打印机?
·AutoCAD工具栏发生Ribbon问题的解决方法
·插入USB便死机的问题
·IPHONE手机的输入法怎么迅速切换?
·QQ怎么收不到表情?
·接听电话死机的解决办法有什么?
·如何使下载的文件默认为迅雷下载
·电脑一天可以开多少时间
·为什么MP3歌曲电脑上能听放到mp3里就不能听了?
·如何快速判断电脑是否支持Vista Aero特效
·什么软件可以临时关闭笔记本电脑的触摸板?
·苹果ipad怎么开关机啊
·电脑用一个小时左右就突然关机怎么办?
·“bootmgr is compressed” Windows 7无法启动怎么办?
·老显卡怎么连接液晶电视?
·禁用Vista唤醒休眠后需要输入密码的方法
·中文版的FireFox怎么变成英文版?
·在word里怎样生成目录?
·意外断电导致TF卡不能使用怎么办?
·windows7下如何建立快速启动栏
·怎么压缩QQ聊天记录?
·MACBOOK管理员密码忘记的解决办法?
·Win7桌面上的程序快捷方式全都打不开了,怎么办?
·怎么从电路中找出损坏的电子元件
·VMware中如何添加本地打印机?
·AutoCAD工具栏发生Ribbon问题的解决方法
·插入USB便死机的问题
·IPHONE手机的输入法怎么迅速切换?
·QQ怎么收不到表情?
·接听电话死机的解决办法有什么?
·如何使下载的文件默认为迅雷下载
·电脑一天可以开多少时间
·为什么MP3歌曲电脑上能听放到mp3里就不能听了?
·如何快速判断电脑是否支持Vista Aero特效
·什么软件可以临时关闭笔记本电脑的触摸板?
·苹果ipad怎么开关机啊
·电脑用一个小时左右就突然关机怎么办?
·“bootmgr is compressed” Windows 7无法启动怎么办?
·老显卡怎么连接液晶电视?
·禁用Vista唤醒休眠后需要输入密码的方法
·中文版的FireFox怎么变成英文版?
·在word里怎样生成目录?