Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Надо удалить файлы у которых в названии содержится слово "автосохранение" (http://forum.oszone.net/showthread.php?t=301396)

ufooo 19-06-2015 16:33 2520223

Надо удалить файлы у которых в названии содержится слово "автосохранение"
 
Файлы которых надо удалить находится здесь;
Код:

%Userprofile%\Documents\The Witcher\saves
Пример полново названия одново из таких файлов;
Код:

000004 - Территория Каэр Морхен (автосохранение)-001.TheWitcherSave
Можно ли такое зделать с помощю, (.bat) скрипта.

Iska 19-06-2015 17:16 2520240

Какие именно файлы? Что у них у всех общего, и что — отличного от остальных?

ufooo 19-06-2015 17:33 2520243

Вот разница:
Файл автосохранения- этих надо удалять;
000004 - Территория Каэр Морхен (автосохранение)-001.TheWitcherSave
Ползовалелское сохранение игры- клавишей, (F5)-этих нетрогать;
000046 - Окрестности Вызимы-041.TheWitcherSave
Цифры впереди это счетчик сохраненных файлов: 000007 - 000046 ... и.т.д.
Разширения файла, (.TheWitcherSave)

Iska 19-06-2015 21:04 2520309

ufooo, попробуйте так:
Скрытый текст
Код:

@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFolder=%UserProfile%\Documents\The Witcher\saves

if exist "%sSourceFolder%\." (
        pushd "%sSourceFolder%"
        for /f "usebackq delims=" %%i in (
                `2^>nul dir /a /b "*(автосохранение)-*.TheWitcherSave" ^| findstr.exe /i /r /c:"^.*(автосохранение)-[0-9][0-9][0-9]\.TheWitcherSave$"`
        ) do echo del /f /q "%%~i"
        popd
) else (
        echo Can't find source folder [%sSourceFolder%].
        exit /b 1
)

endlocal
exit /b 0


Для реального удаления файлов уберите echo. Код будет работать только под Vista и выше (из-за прямого указания «…\Documents\…»). Обратите внимание, что пакетный файл должен иметь кодировку OEM/866.

ufooo 20-06-2015 02:08 2520380

Превосходно- все работает. Спасибо за работу!


Время: 23:29.

Время: 23:29.
© OSzone.net 2001-