方案一:Windows 批处理脚本 (.bat)
这个脚本会清理指定目录下的所有文件和子文件夹,只保留目录本身。
脚本代码:
batch
@echo off chcp 65001 >nul setlocal enabledelayedexpansion :: ===== 请务必修改这个路径! ===== set "TARGET_DIR=C:\Users\你的用户名\Desktop\待清理文件夹" :: ================================= echo 警告:即将永久删除以下路径中的所有内容: echo %TARGET_DIR% echo. set /p confirm="确认执行?请输入 YES 继续: " if /i not "%confirm%"=="YES" ( echo 操作已取消。 pause exit /b ) if not exist "%TARGET_DIR%" ( echo 错误:目标路径不存在! pause exit /b ) echo 正在清理,请稍候... :: 核心命令:删除目录下所有文件和子目录 takeown /f "%TARGET_DIR%" /r /d y >nul 2>&1 icacls "%TARGET_DIR%" /grant administrators:F /t >nul 2>&1 rmdir /s /q "%TARGET_DIR%" mkdir "%TARGET_DIR%" echo 清理完成! pause
使用步骤:
新建一个文本文件,命名为
一键清理.bat。右键用“记事本”打开,粘贴代码。
修改
TARGET_DIR的路径为你要清空的目标文件夹。保存后,以管理员身份运行这个
.bat文件。
方案二:macOS / Linux Shell 脚本 (.sh)
这个脚本适合清理指定目录(比如~/Downloads或~/Desktop/待清理)的内容。
脚本代码:
bash
#!/bin/bash # ===== 请务必修改这个路径! ===== TARGET_DIR="/Users/你的用户名/Desktop/待清理文件夹" # ================================ echo "警告:即将永久删除以下路径中的所有内容:" echo "$TARGET_DIR" echo "" read -p "确认执行?请输入 YES 继续: " confirm if [ "$confirm" != "YES" ]; then echo "操作已取消。" exit 0 fi if [ ! -d "$TARGET_DIR" ]; then echo "错误:目标路径不存在!" exit 1 fi echo "正在清理,请稍候..." # 核心命令:进入目标目录,删除所有内容(包括隐藏文件),但保留目录本身 cd "$TARGET_DIR" || exit rm -rf ./* ./.[!.]* ./..?* 2>/dev/null echo "清理完成!"
使用步骤:
打开“终端”(Terminal)。
执行
nano ~/Desktop/一键清理.sh创建脚本文件。粘贴代码,修改
TARGET_DIR的路径。按
Ctrl+O保存,Ctrl+X退出。赋予执行权限:
chmod +x ~/Desktop/一键清理.sh运行脚本:
sudo ~/Desktop/一键清理.sh(需要输入密码)