今天在研究windows系统下的bat脚本,想要去遍历一个目录并输出该目录下的所有文件的详细信息。经过一番查找和摸索,使用以下代码即可实现:
@echo offset source_dir="C:\Users\leon\Desktop\test"for /R %source_dir% %%f in (*.*) do (echo 完整路径信息: %%fecho 所在目录信息: %%~dpfecho 文件前缀名称: %%~nfecho 文件后缀名称: %%~xfecho 完整文件名称: %%~nxfecho 不带后缀路径: %%~dpnfecho 文件修改时间: %%~tfecho 文件内容大小: %%~zf Byte)pause
运行结果如下:
完整路径信息: C:\Users\leon\Desktop\test\test.txt
所在目录信息: C:\Users\leon\Desktop\test
文件前缀名称: test
文件后缀名称: .txt
完整文件名称: test.txt
不带后缀路径: C:\Users\leon\Desktop\test\test
文件修改时间: /07/09 14:58
文件内容大小: 12 Byte
请按任意键继续. . .
如果只要列出某种类型的文件(比如*.doc),那么改成下面的语句就行:
@echo offset source_dir="C:\Users\leon\Desktop\test"for /R %source_dir% %%f in (*.doc) do (echo 完整路径信息: %%fecho 所在目录信息: %%~dpfecho 文件前缀名称: %%~nfecho 文件后缀名称: %%~xfecho 完整文件名称: %%~nxfecho 不带后缀路径: %%~dpnfecho 文件修改时间: %%~tfecho 文件内容大小: %%~zf Byte)pause