Войти

Показать полную графическую версию : [решено] Внесение изменений в ini файл на основе анализа содержимого


Stalker_AleX333
14-01-2018, 20:09
Имеется небольшой .ini файл, содержащий набор различных настроек:



Source installed mods pack version = 1.3.0.00

Last full installed mods pack version = false или, например: 1.3.1.00

Last install update = false или, например: 1.3.3.00

Audio Overhaul Skyrim - Obsidian Weathers = true



От cmd-шника требуется просканировать, какое значение присвоено каждому из параметров, после чего будут следовать выполняемые им действия.

Last full installed mods pack version заполняется нужным значением, заранее записанным в теле cmd-шника (версия, состоящая из пяти цифр), далее идет сравнение этих чисел с числами в первой строке. И в случае несовпадения - вывод сообщения пользователю. Если в ней (второй строке) обнаруживается false - пропускаем проверку, работу продолжаем в обычном режиме.

Last install update, аналогично заполняется нужным значением, оно сверяется и корректируется, в случае отклонения от заданного.

Audio Overhaul Skyrim - Obsidian Weathers нужно что-то вроде этого:

cls
set "ModsPackConfig=Silver Raven mods pack data\Silver Raven mods pack config.ini"
set "AudioOverhaulSkyrimBackup[ObsidianWeathersOFF]=Silver Raven mods pack data\Audio and weather mods options\Audio Overhaul Skyrim [Obsidian Weathers OFF].*"
set "AudioOverhaulSkyrim=Data\Audio Overhaul Skyrim.*"
set "ObsidianWeathers=Data\Obsidian Weathers.esp"
set "GameData=Data"

Если в ini файле %ModsPackConfig% нашли строку Audio Overhaul Skyrim - Obsidian Weathers = true, тогда выполняем код ниже, если нет - только del /f /q "Data\Obsidian Weathers.esp"

if exist "%AudioOverhaulSkyrim%" copy /y "%AudioOverhaulSkyrimBackup[ObsidianWeathersOFF]%" "%GameData%\"
ren "Data\Audio Overhaul Skyrim [Obsidian Weathers OFF].esp" "Audio Overhaul Skyrim.esp"
del /f /q "Data\Obsidian Weathers.esp"

pause
exit

Stalker_AleX333
19-01-2018, 19:57
Решил вопрос самостоятельно, но другим способом. Тему закрываю.




© OSzone.net 2001-2012