CMD/BAT - [решено] Надо удалить файлы у которых в названии содержится слово "автосохранение"

Ответить
Аватара пользователя
ufooo

CMD/BAT - [решено] Надо удалить файлы у которых в названии содержится слово "автосохранение"

Сообщение ufooo »

Файлы которых надо удалить находится здесь;



Код:

Код: Выделить всё

%Userprofile%\Documents\The Witcher\saves

Пример полново названия одново из таких файлов;



Код:

Код: Выделить всё

000004 - Территория Каэр Морхен (автосохранение)-001.TheWitcherSave

Можно ли такое зделать с помощю, (.bat) скрипта.
Аватара пользователя
Iska

Re: CMD/BAT - [решено] Надо удалить файлы у которых в названии содержится слово "автосохранение"

Сообщение Iska »

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

Re: CMD/BAT - [решено] Надо удалить файлы у которых в названии содержится слово "автосохранение"

Сообщение Iska »

Вот разница:

Файл автосохранения- этих надо удалять;

000004 - Территория Каэр Морхен (автосохранение)-001.TheWitcherSave

Ползовалелское сохранение игры- клавишей, (F5)-этих нетрогать;

000046 - Окрестности Вызимы-041.TheWitcherSave

Цифры впереди это счетчик сохраненных файлов: 000007 - 000046 ... и.т.д.

Разширения файла, (.TheWitcherSave)
Аватара пользователя
Iska

Re: CMD/BAT - [решено] Надо удалить файлы у которых в названии содержится слово "автосохранение"

Сообщение Iska »

ufooo, попробуйте так:



Скрытый текст

[spoiler]Код:
[/spoiler]

Код: Выделить всё

@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.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»