回复 10# smatenchen
代码发上去之后,看楼主没有回应,我想可能对楼主的需求理解错误,所以就将原贴删除了,并且也未留下备份。
代码的主要思路是:
1.前2个for循环利用skip,分别忽略前n个txt文件将其余txt文件名保存在1.log中,忽略后n个txt文件将其余txt文件名保存在2.log中;
2.第3个for循环是利用findstr命令取2个log文件中交集(而非并集),即取掐头去尾后位于中间的txt文件名,利用del命令删除这些文件。
关于楼主几点疑问的回复:
1.此处确实可以不使用变量延迟功能;
2.至于是否会把所有txt文件全部删除,这里不用争论,因为这是一个实践性非常强的知识,试一试即知。并且在上面思路的第2点已经说的很清楚了。
3.我觉得楼主对重定向命令理解是浮在表面。在这里可以举个简单的例子,如果用我上面的代码不好理解,我将for循环中能够显示的内容拆分开来,可能看的较为明白,自己去测试一下:- (
- echo,1
- echo,2
- echo,3
- echo,4
- echo,5
- )>a.txt
复制代码 看看a.txt里的内容是什么?
把上面代码括号中的多行替换成:- (
- for /l %%a in (1,1,5) do (
- echo,%%a
- )
- )>a.txt
复制代码 看看2段代码是不是等价的? |