删除指定文件夹中除保留的文件外的所有文件批处理 删除指定文件夹下的空文件夹,包括子目录批处理...
时间: 2023-08-07 14:08:26 浏览: 135
您可以使用以下批处理脚本来删除指定文件夹中除保留的文件外的所有文件:
```
@echo off
set "folder=C:\Your\Folder\Path"
set "preserve=C:\Your\Folder\Path\preserve.txt"
for /f "delims=" %%i in ('dir /b /a-d "%folder%" ^| findstr /vile /g:"%preserve%"') do (
del "%folder%\%%i" /q
)
exit
```
这个脚本将会读取一个名为 `preserve.txt` 的文件,里面包含了要保留的文件名,然后删除文件夹中除这些文件外的所有文件。
如果您要删除指定文件夹下的所有空文件夹,包括子目录,可以使用以下批处理脚本:
```
@echo off
set "folder=C:\Your\Folder\Path"
for /f "delims=" %%i in ('dir /ad /b /s "%folder%" ^| sort /r') do (
rd "%%i" 2>nul
)
exit
```
这个脚本将会递归地遍历指定文件夹下的所有文件夹,然后删除其中所有空文件夹。注意,这个脚本会删除所有空文件夹,包括保留文件夹的子文件夹,所以请确保您知道自己在做什么。
相关问题
生成一个删除文件夹下所有文件,其中包括该路径下非空文件夹,保留删除路径文件夹的上级目录的.bat批处理文件
好的,以下是一个批处理文件示例,可以删除指定路径下的所有文件,包括非空文件夹,但保留删除路径文件夹的上级目录:
```bat
@echo off
set folderPath=C:\path\to\folder
if exist %folderPath% (
for /d %%i in (%folderPath%\*) do (
rd /s /q "%%i"
)
del /q %folderPath%\*.*
echo All files and subfolders in %folderPath% have been deleted successfully.
) else (
echo The specified folder does not exist.
)
pause
```
请将 `C:\path\to\folder` 替换为实际的文件夹路径。此批处理文件将检查指定的文件夹是否存在,如果存在,则使用 `for /d` 命令循环遍历该文件夹下的所有子文件夹,并使用 `rd /s /q` 命令删除每个子文件夹(包括其中的所有文件和子文件夹)。然后,使用 `del /q` 命令删除指定文件夹下的所有文件。最后,在命令行窗口中显示相应的消息。
希望这个批处理文件能满足您的需求!如果您有其他问题,请随时提问。
给出.bat文件的代码,用于批量删除当前文件夹下指定文件夹内的所有pdf文件
在Windows环境下,你可以创建一个批处理(.bat)文件来批量删除特定目录下的PDF文件。以下是一个简单的示例脚本:
```batch
@echo off
setlocal enabledelayedexpansion
rem 指定需要搜索的目录
set "folder_path=%cd%\your_folder_directory" rem 将 "your_folder_directory" 替换为你想要查找PDF的实际路径
if exist "%folder_path%" (
echo 正在删除 %folder_path% 下的所有 PDF 文件...
for /r "%folder_path%" %%f in (*.pdf) do (
del "%%f"
echo 删除了文件: %%f
)
if errorlevel 1 (
echo 删除过程中遇到错误,请检查文件权限或目录是否存在。
) else (
echo 所有 PDF 文件已成功删除。
)
) else (
echo 目录不存在,无法删除PDF文件。
)
endlocal
```
将 `your_folder_directory` 替换为你想删除PDF的具体子文件夹名称。这个脚本会递归遍历指定目录及其子目录,并删除所有`.pdf`扩展名的文件。
阅读全文