Board logo

标题: 如何用批处理显示带过滤条件的Tree命令? [打印本页]

作者: xldos     时间: 2007-4-13 23:50    标题: 如何用批处理显示带过滤条件的Tree命令?

如:我只想显示Excel文件的Tree图,而不是全部文件

E:.
│  a001.xls
│  a002.xls
├─AA
│  a1.xls       
│  a2.xls
├─BB─
│  │
│  ├─DD
│  │         d1.xls
│  └─EE
│               f1.xls
│     f2.xls
└─CC
         q1.xls
         q2.xls
作者: lp1129     时间: 2007-4-14 01:18
给你个dir的方法吧

dir /b /a-d /s *.xls
作者: xldos     时间: 2007-4-14 05:50
to lp1129

  Quote:
Originally posted by lp1129 at 2007-4-13 12:18 PM:
给你个dir的方法吧

dir /b /a-d /s *.xls

我需要的是tree的效果,又不想要无用的信息。
作者: xldos     时间: 2007-4-16 05:24
没人看,先顶一下
作者: xldos     时间: 2007-4-16 06:17
相到用sed来处理tree后的结果文档

可sed /.xls/d tree结果文件是删除含.xls的行,删除不含有".xls"行的用法不懂,并且多条件不知行不行,如:删除不含“.xls"或不含"├”或不含“└”,还望高手来看看
作者: xldos     时间: 2007-4-16 07:34
知道 sed /.xls/!d tree.txt 是删除不匹配".xls"的所有行, 多匹配怎处理还不知
作者: xldos     时间: 2007-4-16 22:24
我的方法,可效率低下

@echo off
for /L %%a in (1,1,15000) do (
        echo %%a
        sed %%a!d tree.txt>tmp.txt
        for /F %%i in (Linetype.txt) do (               
                sed /%%i/!d tmp.txt>>Result.txt
        )
)

Result是结果。15000是tree.txt里的行数,不知查询文件行数的方法

Linetype.txt设置要保留的字串,想把字串放For语句里,不知怎弄,字串如下:

卷序列号为
:
.xls