用批处理命令批量获取指定文件夹内的文件名

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用批处理命令批量获取指定文件夹内的文件名

在需要提取文件名的文件夹内新建一个文本文件,输入内容:

dir /s /w >>catalog.txt

保存后将其文件后缀.txt改为.bat,然后运行之,该文件夹下会自动产生一个catalog.txt的文本文件,其中就包含了当前文件夹的所有文件名列表。这个bat文件可以挪到任何文件夹下进行运行。

参数解读:

如果为dir*.doc/s /w >>catalog.txt,表示仅生成后缀为.doc的文件,如果是*.*,那就表明包含所有文件,因此也可以省略不写(如最上面提到的范例)。

/s 表示只显示系统文件;

/w 表示只显示文件名,至于文件大小及建立的日期和时间则都省略;

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

更多参考:DIR 命令的格式

dir [D:][PATH][NAME][[/A][:attrib]][/o:[sorted][/s][/l][/c[h]

(1)dir /a:attrib 缺省包含所有文件(系统文件.隐含文件)

attrib[:][h/-h]只显示隐含文件或非隐含文件.

[r/-r]只显示只读文件或非只读文件

[s/-s]只显示系统文件或非系统文件

[a/-a]只显示要归档文件或非归档文件

(2)/o[:]sorted:缺省完全按字母顺序,子目录显示在文件之前

/o[n/-n]:按字母顺序或按文件名顺序/反向显示

[e/-e]:按扩展名字母顺序/反向显示

[d/-d]:按时间顺序/反向显示

[s/-s]:按大小从大到小或/反向显示

[g/-g]:按子目录先于文件或文件先于子目录

(3)/s 参数:对当前目录及其子目录中所有文件进行列表

(4)/B 参数:将只显示文件名与扩展名

(5)/L 参数:将全部用小写字母对文件或子目录进行列表

如何快速获取当前目录下的xls文件清单

1,新建一txt文件,输入如下代码:

For /r %%i in (*.xls) DO @echo %%~fi >>Excel文件名.txt

其中粗体部分为执行批处理后新生成的存放xls文件名清单的txt文件

2,存盘后更改扩展名txt为bat

3,执行bat文件,就生成了txt格式的文件名清单

4,附件为可执行bat文件

批处理自身%0 的总结。

批处理运用中,经常要对自身进行操作,

如:提取路径,文件名,后缀名,大小,等等。。。。

充分利用%0的扩展功能,可以很方便的实现。

:: code by 随风@ 2008/01/08

1、获取批处理自身的完整路径

@echo off

echo %0

pause

2、获取批处理自身的完整路径,并去掉首尾的引号@echo off

echo %~0

pause

3、获取批处理自身的文件名及后缀名

@echo off

echo %~nx0

pause

4、获取批处理自身的文件名

@echo off

echo %~n0

pause

5、获取批处理自身的后缀名

@echo off

echo %~x0

pause

6、获取批处理自身的完整路径,不含文件名

@echo off

echo %~dp0

pause

@echo off

echo %cd%

pause

7、获取批处理自身的盘符

@echo off

echo %~d0

pause

8、获取批处理自身的大小

@echo off

echo %~z0

pause

9、获取批处理自身的修改时间

@echo off

echo %~t0

pause

相关文档
最新文档