@echo off && setlocal enabledelayedexpansion
cd /d "C:\" && for /f tokens^=* %%i in ('dir /s /b /a:d "temp"')do (
echo\ Current Folder: "%%~i"
echo\ RmDir /q /s "%%~i"
echo\ MkDir "%%~i"
)
%__APPDIR__%\Timeout.exe /t -1 & endlocal & goto :EOF
1) Go на привод:
cd /d "C:\"
2) Использование For /f
с dir /s /b /a:d
вместо For /D /R
for /f tokens^=* %%i in ('dir /s /b /a:d "temp"')do...
3) Не нужно удалять файлы в целевой папке, просто удалите и снова создайте эту папку ...
RmDir /q /s "%%~i" && MkDir "%%~i\*"
Current Folder: "C:\Program Files (x86)\Google\Temp"
rmdir /q /s "C:\Program Files (x86)\Google\Temp"
mkdir "C:\Program Files (x86)\Google\Temp\"
Current Folder: "C:\Program Files (x86)\Steam\steamapps\temp"
rmdir /q /s "C:\Program Files (x86)\Steam\steamapps\temp"
mkdir "C:\Program Files (x86)\Steam\steamapps\temp\"
Current Folder: "C:\ProgramData\Microsoft\Windows\WER\Temp"
rmdir /q /s "C:\ProgramData\Microsoft\Windows\WER\Temp"
mkdir "C:\ProgramData\Microsoft\Windows\WER\Temp\"
Current Folder: "C:\Users\All Users\Microsoft\Windows\WER\Temp"
rmdir /q /s "C:\Users\All Users\Microsoft\Windows\WER\Temp"
mkdir "C:\Users\All Users\Microsoft\Windows\WER\Temp\"
Current Folder: "C:\Users\Default\AppData\Local\Temp"
rmdir /q /s "C:\Users\Default\AppData\Local\Temp"
mkdir "C:\Users\Default\AppData\Local\Temp\"
Current Folder: "C:\Users\ecker\AppData\Local\Temp"
rmdir /q /s "C:\Users\ecker\AppData\Local\Temp"
mkdir "C:\Users\ecker\AppData\Local\Temp\"
Current Folder: "C:\Users\ecker\AppData\Local\Intel\CUIPromotions\Temp"
rmdir /q /s "C:\Users\ecker\AppData\Local\Intel\CUIPromotions\Temp"
mkdir "C:\Users\ecker\AppData\Local\Intel\CUIPromotions\Temp\"
Current Folder: "C:\Users\ecker\AppData\Local\Packages\windows_ie_ac_001\AC\Temp"
rmdir /q /s "C:\Users\ecker\AppData\Local\Packages\windows_ie_ac_001\AC\Temp"
mkdir "C:\Users\ecker\AppData\Local\Packages\windows_ie_ac_001\AC\Temp\"
Current Folder: "C:\Windows\Temp"
rmdir /q /s "C:\Windows\Temp"
mkdir "C:\Windows\Temp\"
Current Folder: "C:\Windows\assembly\temp"
rmdir /q /s "C:\Windows\assembly\temp"
mkdir "C:\Windows\assembly\temp\"
mkdir "C:\Windows\assembly\NativeImages_v4.0.30319_64\Temp\"
Current Folder: "C:\Windows\System32\DriverStore\Temp"
rmdir /q /s "C:\Windows\System32\DriverStore\Temp"
mkdir "C:\Windows\System32\DriverStore\Temp\"
Current Folder: "C:\Windows\WinSxS\Temp"
rmdir /q /s "C:\Windows\WinSxS\Temp"
mkdir "C:\Windows\WinSxS\Temp\"
- Проверьте в своем проверьте выходы и для эффективного выполнения удалите
echo
in:
@echo off && setlocal enabledelayedexpansion
cd /d "C:\" && for /f tokens^=* %%i in ('dir /s /b /a:d "temp"')do (
echo\ Current Folder: "%%~i"
<strike><strong>echo\</strike></strong> RmDir /q /s "%%~i"
<strike><strong>echo\</strike></strong> MkDir "%%~i"
)
%__APPDIR__%\Timeout.exe /t -1 & endlocal & goto :EOF
- Или используйте эту короткую опцию для подавления возможного сообщения об ошибке для любая используемая папка или какой-либо другой тип ошибки
@echo off
setlocal enabledelayedexpansion && cd /d "C:\"
for /f "tokens=*" %%i in ('dir /s /b /a:d "temp"
')do 2>nul >nul (RmDir /q /s "%%~i" && MkDir "%%~i")
"%__APPDIR__%\Timout.exe" -1 & endlocal & goto :EOF
- И, конечно, немного меньший вариант ...
@echo off
cd/d "C:\" & setlocal enabledelayedexpansion
for /f tokens^=* %%i in ('dir/s/b/a:d "temp"
')do 2>nul (RmDir /q /s "%%~i" && MD "%%~i")
"%__APPDIR__%\Timeout.exe" /t -1 && endlocal
Для справки из командной строки вы можете использовать /?
:
RmDir /?, For /?, MkDir /?, Endlocal /?, SetLocal /?
В inte rnet вы можете получить дополнительную помощь по: