WINDOWS-日常技巧整理-1-扫描目录

00.环境检测与配置(前置说明)

@echo off

解释:关闭回显,根据需要,也可以不关闭
chcp 936

解释:环境文本格式,936是帮助识别中文的,也可以设置位UTF-8对应的编码,根据需要设置。

%%与%

解释:对于在文本中出现的变量用%%,对于在命令行中出现的变量用%

%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%

解释:文本的名称中取date函数第0位开始的4位,第5位开始的2位,第8位开始的2位,time函数第0位开始的2位,第3位开始的2位,第6位开始的2位,主要作用在于生成多个文本时,用时间来避免重复,加在文本名称里,也可以不加。

01.扫描当前目录创建目录清单
for /f "delims=" %%a in ('dir /s /b /ad') do (echo %%a >> "目录清单.txt")

解释:将dir /s /b /ad生成的目录,以空格为分隔符,遍历并进行变量赋值给%%a,将%%a追加写入目录清单.txt。

关于delims=  在这里指分隔符集。这个替换了空格和制表符的默认分隔符集。

关于dir的参数

 /A          显示具有指定属性的文件。
  属性         D  目录                R  只读文件
               H  隐藏文件            A  准备存档的文件
               S  系统文件            I  无内容索引文件
               L  解析点             -  表示“否”的前缀

/B          使用空格式(没有标题信息或摘要)。

/S          显示指定目录和所有子目录中的文件。

02.扫描当前目录创建文件树结构清单
tree /f > 文件结构树清单.txt

解释:将文件的结构树覆盖写入文件结构树清单.txt

03.扫描当前目录创建空目录清单
for /f "delims=" %%a in ('dir /s /b /ad') do (dir /b "%%a" | findstr .>nul || echo %%a >> "空目录清单.txt")

解释:递归将所有的目录,遍历赋值给%%a。在%%a中查找文件,如果能找到,则执行 findstr .>nul扔掉文件,如果找不到,则执行echo %%a >> "空目录清单.txt"将该空目录写入空目录清单.txt

04.扫描当前目录创建目录授权清单
for /f "delims=" %%a in ('dir /s /b /ad') do (cacls %%a >> "目录授权清单.txt")

解释:扫描当前目录创建目录授权清单

05.扫描当前目录创建文件清单
for /f "delims=" %%a in ('dir /s /b') do (echo %%a >> "文件清单.txt")

解释:扫描当前目录创建文件清单

06.扫描当前目录创建目录结构清单
tree  > 目录结构清单.txt

解释:将目录的结构树覆盖写入目录结构清单.txt

猜你喜欢

转载自blog.csdn.net/ligan1115/article/details/89317976