批量清理目录文件

Posted 笑虾

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量清理目录文件相关的知识,希望对你有一定的参考价值。

批量清理目录、文件

批量删除目录

@echo off
:: 解决读取文件内容中文乱码的问题。当前bat需要保存为utf-8
chcp 65001
@cls

@rem 获取当前路径 
SET CURRENT_DIR=%~dp0

@rem 目标文件夹 
SET target="target"

for /r "%CURRENT_DIR%" %%a in (.) do (
	if "%%~nxa"==%target% (
		echo 删除 %%a
		rd /s/q %%a
	)
  )
)
echo.
echo 清理完成!
pause

删除多个目标文件夹

在套一层 for 就行了。只要设置目标文件夹多个用逗号分隔。然后执行即可。

@echo off
:: 解决读取文件内容中文乱码的问题。当前bat需要保存为utf-8 
chcp 65001
@cls

@rem 获取当前路径 
SET CURRENT_DIR=%~dp0

@rem 目标文件夹 target,mytest 多个用逗号分隔 
SET target=target,mytest

for /r "%CURRENT_DIR%" %%a in (.) do (
	for %%b in (%target%) do (
		if "%%~nxa"=="%%b" (
			echo 删除 %%a
			rd /s/q %%a
		)
	)
)

echo.
echo 清理完成!
pause

批量删除文件

@echo off
:: 解决读取文件内容中文乱码的问题。当前bat需要保存为utf-8
chcp 65001
@cls

@rem 目标文件名。多个文件名用空格分隔。
SET target=aaa.xml bbb.md

for %%a in (%target%) do (
	del /f /s %%a
  )
)
echo.
echo 清理完成!
pause

核心就是 del /f /s %%a 如果目标文件不多,直接写成这样更简单:

del /f /s aaa.xml
del /f /s bbb.md

参考资料

笑虾:BAT 学习笔记
批量拉取所有子目录 git pull --all

以上是关于批量清理目录文件的主要内容,如果未能解决你的问题,请参考以下文章

Hexo 博客批量清理本地图片

shell习题-清理日志

对照实验-批量清理系统临时文件

脚本要求:两类机器一共300多台,写个脚本自动清理这两类机器里面的日志文件。

Harbor1.5.2批量清理无效镜像

Teleport Ultra/Teleport Pro的冗余代码批量清理方法