babyedu 发表于 2011-8-8 09:18:12

也来一个获取文件目录列表的方法(简单方便)

本帖最后由 babyedu 于 2011-8-8 10:43 编辑

看到坛子里有不少TX分享了获取文件列表的方法
恰巧自己也需要,就学习了一下
现将学习结果分享给大家,有问题请跟帖


主要原理:利用Tree命令生成文件树,写成脚本,添加到右键快捷菜单”发送到“(方便使用)

1、写批处理文件,保存到系统文件夹
    1)打开记事本,写入代码
    XP:开始->运行->notepad
    win7: win键->notepad.exe->右键“以管理员身份运行”
    复制粘贴下面代码
    ----------------------------
      @rem 此BAT文件名一定不能是"tree.bat",否则tree命令会实效
      @echo off
      rem 在当前目录生成很漂亮的结构树
      set path_arg=%~d1%~p1
      set mydate=%date:~,4%%date:~5,2%%date:~8,2%
      set hh=%time:~0,2%
      rem 如果小时数只有一位数字,造成中间有空格而出错的问题
      rem 请使用如下方法补0
      if /i %hh% LSS 10 (set hh=0%time:~1,1%)
      set mm=%time:~-8,2%
      set filename=%mydate%_%hh%%mm%
      rem TREE "%~1" /F > "%path_arg%LIST.TXT"
      tree "%~1" /f > %path_arg%%filename%.txt   
    ----------------------------
    2)保存到系统文件夹
      保存类型->所有文件(*.*)
      文件名->%windir%\FileList.bat
      确定
2、在SendTo文件夹中创建到上面FileList.bat的快捷方式
    1)Vista/Win7:开始->运行->%APPDATA%\Microsoft\Windows\SendTo
      XP:开始->运行->%USERPROFILE%\SendTo
    2)窗口空白处->右键->新建->快捷方式
    3)请键入对象的位置:%windir%\FileList.bat
    4)键入快捷方式的名称:打印目录列表(可自己选择喜欢的名字)
   
3、使用
    想对获取某个文件夹的完整列表
    右键单击该文件夹->发送到->打印目录列表(在上面指定的名称)
    结果输出到类似:20110808_0901.txt的文件中
    (视文件夹内文件多少,所需时间不等等
    经过测试,比ftplist快多了)
   

ahuiya 发表于 2011-8-8 09:34:09

好久不用这些都忘差不多了,简单的才是最好的

wanghv 发表于 2011-8-8 09:45:34

我试过了,的确好用,谢谢楼主。补充:
1、我用的是xp,楼主提到的%windir%,是c:/windows目录,大家可用通过XP:开始->运行->cmd,弹出的对话框中,键入echo %windir%看看是什么;
2、生成的文件,在你选择目录的上一级,比如选择c:/windows,实际生成的文件在c:/下。
页: [1]
查看完整版本: 也来一个获取文件目录列表的方法(简单方便)