 |
|
Stalker_AleX333 |
26-06-2019 22:51 2876988 |
Удаление файлов по списку и исключения через параметр attrib
Мне жутко надоело писать портянки-списки файлов на удаление и я решил пойти противоположным путем. Удалять определенные файлы в папке, из которой запускается cmd-шник, а затем удалять все, что есть из подпапки Data, корме файлов из списка-исключения (для чего, временно меняем им атрибуты на "только для чтения"). Вот только не работает эта конструкция нихрена... Таки почему?
Код:
:: Удаление папок настроек сборки и шейдерных пакетов
rd /s /q enbcache enbseries reshade-shaders "Silver Raven mods pack data"
:: Удаление файлов шейдерных пакетов, SKSE64 с dll плагинами, а также readme файлов
del /q dxgi.* d3d11.* d3dcompiler_46e.* d3dx9_42.* enbadaptation.* enbbloom.* enbdepthoffield.* enbeffect.* enbeffectpostpass.* enbeffectprepass.* enblens.* enblocal.* enbseries.* skse64_1_5_3.* skse64_1_5_16.* skse64_1_5_23.* skse64_1_5_39.* skse64_1_5_50.* skse64_1_5_53.* skse64_1_5_62.* skse64_1_5_73.* skse64_1_5_80.* skse64_loader.* skse64_steam_loader.* tbb.* tbbmalloc.* "*.info" Plugins.* Licence.* Readme.* "Readme update.*" "Licence cleaned archives.*" "Readme cleaned archives.*" "Licence Silver Raven mods pack.*" "Readme Silver Raven mods pack.*" "Readme updates Silver Raven mods pack.*"
:: Установка атрибута "только для чтения", для архивов игры
cd Data
attrib +r Dawnguard.esm Dragonborn.esm HearthFires.esm "Skyrim - Animations.bsa" "Skyrim - Interface.bsa" "Skyrim - Meshes0.bsa" "Skyrim - Meshes1.bsa" "Skyrim - Misc.bsa" "Skyrim - Patch.bsa" "Skyrim - Shaders.bsa" "Skyrim - Sounds.bsa" "Skyrim - Textures0.bsa" "Skyrim - Textures1.bsa" "Skyrim - Textures2.bsa" "Skyrim - Textures3.bsa" "Skyrim - Textures4.bsa" "Skyrim - Textures5.bsa" "Skyrim - Textures6.bsa" "Skyrim - Textures7.bsa" "Skyrim - Textures8.bsa" Skyrim.esm Update.esm /d
:: Удаление всего содержимого папки Data
del /s /q *
:: Снятие атрибута "только для чтения", для архивов игры
attrib -r Dawnguard.esm Dragonborn.esm HearthFires.esm "Skyrim - Animations.bsa" "Skyrim - Interface.bsa" "Skyrim - Meshes0.bsa" "Skyrim - Meshes1.bsa" "Skyrim - Misc.bsa" "Skyrim - Patch.bsa" "Skyrim - Shaders.bsa" "Skyrim - Sounds.bsa" "Skyrim - Textures0.bsa" "Skyrim - Textures1.bsa" "Skyrim - Textures2.bsa" "Skyrim - Textures3.bsa" "Skyrim - Textures4.bsa" "Skyrim - Textures5.bsa" "Skyrim - Textures6.bsa" "Skyrim - Textures7.bsa" "Skyrim - Textures8.bsa" Skyrim.esm Update.esm /d
|
1. Таки зачем?
2. Внезапно — после того, как Вы сменили неизвестный текущий каталог на каталог Data:
есть некоторое подозрение ;), что внутри него может не найтись ещё один одноимённый каталог, внутри которого Вы пытаетесь удалять:
|
Stalker_AleX333 |
27-06-2019 20:41 2877140 |
Iska, ок, тупанул. Убрал.
Но attrib все-равно не отрабатывает (ошибка в формате параметра), соответственно удаляется все содержимое (кроме подпапок, их тоже нужно убрать. в одну команду никак не засунуть? объединять с предыдущим rd?).
Код:
:: Удаление папок шейдерных пакетов и настроек\опций сборки
rd /s /q enbcache enbseries reshade-shaders "Silver Raven mods pack data"
:: Удаление файлов шейдерных пакетов, SKSE64 с dll плагинами, а также readme файлов
del /q dxgi.* d3d11.* d3dcompiler_46e.* d3dx9_42.* enbadaptation.* enbbloom.* enbdepthoffield.* enbeffect.* enbeffectpostpass.* enbeffectprepass.* enblens.* enblocal.* enbseries.* "Silver Raven ReShade preset.ini" skse64_1_5_3.* skse64_1_5_16.* skse64_1_5_23.* skse64_1_5_39.* skse64_1_5_50.* skse64_1_5_53.* skse64_1_5_62.* skse64_1_5_73.* skse64_1_5_80.* skse64_loader.* skse64_steam_loader.* tbb.* tbbmalloc.* "*.info" Plugins.* Licence.* Readme.* "Readme update.*" "Licence cleaned archives.*" "Readme cleaned archives.*" "Licence Silver Raven mods pack.*" "Readme Silver Raven mods pack.*" "Readme updates Silver Raven mods pack.*"
:: Установка атрибута "только для чтения", для архивов игры
cd Data
attrib +r Dawnguard.esm Dragonborn.esm HearthFires.esm "Skyrim - Animations.bsa" "Skyrim - Interface.bsa" "Skyrim - Meshes0.bsa" "Skyrim - Meshes1.bsa" "Skyrim - Misc.bsa" "Skyrim - Patch.bsa" "Skyrim - Shaders.bsa" "Skyrim - Sounds.bsa" "Skyrim - Textures0.bsa" "Skyrim - Textures1.bsa" "Skyrim - Textures2.bsa" "Skyrim - Textures3.bsa" "Skyrim - Textures4.bsa" "Skyrim - Textures5.bsa" "Skyrim - Textures6.bsa" "Skyrim - Textures7.bsa" "Skyrim - Textures8.bsa" Skyrim.esm Update.esm "Unofficial HD Audio Project - ENG0.bsa" "Unofficial HD Audio Project - ENG1.bsa" "Unofficial HD Audio Project - ENG2.bsa" "Unofficial HD Audio Project - ENG3.bsa" "Unofficial HD Audio Project - ENG4.bsa" "Unofficial HD Audio Project - RUS0.bsa" "Unofficial HD Audio Project - RUS1.bsa" "Unofficial HD Audio Project - RUS2.bsa" "Unofficial HD Audio Project - RUS3.bsa" "Unofficial HD Audio Project - RUS4.bsa" /d
:: Удаление всего содержимого папки Data
rd /s /q Interface Meshes Scripts SKSE Sound Textures Videos
del /s /q *
:: Снятие атрибута "только для чтения", для архивов игры
attrib -r Dawnguard.esm Dragonborn.esm HearthFires.esm "Skyrim - Animations.bsa" "Skyrim - Interface.bsa" "Skyrim - Meshes0.bsa" "Skyrim - Meshes1.bsa" "Skyrim - Misc.bsa" "Skyrim - Patch.bsa" "Skyrim - Shaders.bsa" "Skyrim - Sounds.bsa" "Skyrim - Textures0.bsa" "Skyrim - Textures1.bsa" "Skyrim - Textures2.bsa" "Skyrim - Textures3.bsa" "Skyrim - Textures4.bsa" "Skyrim - Textures5.bsa" "Skyrim - Textures6.bsa" "Skyrim - Textures7.bsa" "Skyrim - Textures8.bsa" Skyrim.esm Update.esm "Unofficial HD Audio Project - ENG0.bsa" "Unofficial HD Audio Project - ENG1.bsa" "Unofficial HD Audio Project - ENG2.bsa" "Unofficial HD Audio Project - ENG3.bsa" "Unofficial HD Audio Project - ENG4.bsa" "Unofficial HD Audio Project - RUS0.bsa" "Unofficial HD Audio Project - RUS1.bsa" "Unofficial HD Audio Project - RUS2.bsa" "Unofficial HD Audio Project - RUS3.bsa" "Unofficial HD Audio Project - RUS4.bsa" /d
|
Если в папке Data должны остаться перечисленные файлы, в том числе и в подпапках
Код:
@Echo Off
Set Att=Dawnguard.esm Dragonborn.esm HearthFires.esm "Skyrim - Animations.bsa" "Skyrim - Interface.bsa" "Skyrim - Meshes0.bsa" "Skyrim - Meshes1.bsa" "Skyrim - Misc.bsa" "Skyrim - Patch.bsa" "Skyrim - Shaders.bsa" "Skyrim - Sounds.bsa" "Skyrim - Textures0.bsa" "Skyrim - Textures1.bsa" "Skyrim - Textures2.bsa" "Skyrim - Textures3.bsa" "Skyrim - Textures4.bsa" "Skyrim - Textures5.bsa" "Skyrim - Textures6.bsa" "Skyrim - Textures7.bsa" "Skyrim - Textures8.bsa" Skyrim.esm Update.esm
Set "Fold=Data"
FOR %%f IN (%Att%) DO If Exist "%Fold%\%%~f" Attrib +H "%Fold%\%%~f"
FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%Fold%\" /S /B /A:D`) DO (
FOR %%f IN (%Att%) DO If Exist "%%d\%%~f" Attrib +H "%%d\%%~f"
)
>nul Del "%Fold%\*.*" /S /Q
FOR %%f IN (%Att%) DO If Exist "%Fold%\%%~f" Attrib -H "%Fold%\%%~f"
FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%Fold%\" /S /B /A:D`) DO (
FOR %%f IN (%Att%) DO If Exist "%%d\%%~f" Attrib -H "%%d\%%~f"
)
Если в папке Data должны остаться только перечисленные файлы, а всё остальное, включая подпапки, должно быть убито
Код:
@Echo Off
Set Att=Dawnguard.esm Dragonborn.esm HearthFires.esm "Skyrim - Animations.bsa" "Skyrim - Interface.bsa" "Skyrim - Meshes0.bsa" "Skyrim - Meshes1.bsa" "Skyrim - Misc.bsa" "Skyrim - Patch.bsa" "Skyrim - Shaders.bsa" "Skyrim - Sounds.bsa" "Skyrim - Textures0.bsa" "Skyrim - Textures1.bsa" "Skyrim - Textures2.bsa" "Skyrim - Textures3.bsa" "Skyrim - Textures4.bsa" "Skyrim - Textures5.bsa" "Skyrim - Textures6.bsa" "Skyrim - Textures7.bsa" "Skyrim - Textures8.bsa" Skyrim.esm Update.esm
Set "Fold=Data"
FOR %%f IN (%Att%) DO If Exist "%Fold%\%%~f" Attrib +H "%Fold%\%%~f"
>nul Del "%Fold%\*.*" /Q
FOR %%f IN (%Att%) DO If Exist "%Fold%\%%~f" Attrib -H "%Fold%\%%~f"
FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%Fold%\" /B /A:D`) DO Rd /S /Q "%Fold%\%%d"
|
Время: 19:33.
© OSzone.net 2001-