Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Старожил


Сообщения: 352
Благодарности: 193

Профиль | Отправить PM | Цитировать


Stalker_AleX333,
Например так
Код: Выделить весь код
set "list="file1" "file2" "file3""

pushd "C:\path\to\files"
call :checkExistAll %list%
if errorlevel 1 (echo error) else (echo ok)

call :checkExistAny %list%
if errorlevel 1 (echo error) else (echo ok)

pause
exit /b

:: checkExistAll возвращает 0, если все файлы существуют, иначе 1
:checkExistAll
set exitcode=0
for %%f in (%*) do if not exist "%%f" set exitcode=1
exit /b %exitcode%

:: checkExistAnyвозвращает 0, если хотя бы один файл из списка существует, иначе 1
:checkExistAny
set exitcode=1
for %%f in (%*) do if exist "%%f" set exitcode=0
exit /b %exitcode%

Кроме того
Код: Выделить весь код
set "HDSoundsPackagesENG&RUSLocalization="Data\Unofficial HD Audio Project - ENG0.bsa" "Data\Unofficial HD Audio Project - ENG1.bsa" "Data\Unofficial HD Audio Project - ENG2.bsa" "Data\Unofficial HD Audio Project - ENG3.bsa" "Data\Unofficial HD Audio Project - ENG4.bsa" "Data\Unofficial HD Audio Project - RUS0.bsa" "Data\Unofficial HD Audio Project - RUS1.bsa" "Data\Unofficial HD Audio Project - RUS2.bsa" "Data\Unofficial HD Audio Project - RUS3.bsa" "Data\Unofficial HD Audio Project - RUS4.bsa""
в данном случае можно сократить до
Код: Выделить весь код
set "HDSoundsPackagesENG&RUSLocalization=%HDSoundsPackagesENGLocalization% %HDSoundsPackagesRUSLocalization%"

Лучше, пока ещё не поздно, сваливать в сторону PoSh, WSH, Inno, NSIS, ...
Порог входа в скриптинг на батниках низкий, но потом, по мере усложнения батника, повылазят особенности этого архаичного интерпретатора, с которыми придётся сражаться вместо написания полезного кода
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:43, 16-04-2020 | #8