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

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

Аватара для Ж.Д.А.Л.К.Е.Р.

Ветеран


Contributor


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

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


SamLab, Не работает delold.cmd если в пути к нему есть пробелы (к примеру SamDrivers распакован в папку с пробелом). Ниже привел исправленную версию, где выделил жирным добавленные кавычки.

Код: Выделить весь код
@echo off
setlocal enableextensions

set IdxPath=index\
set DrvPath=
if exist "%~dp0index" goto :DelIdx
call :GetCmdDir "%~dp0."
if "%IdxPath%"=="" if exist "%~dp0%DrvPath%drivers" goto :DelIdx
echo This file must be in root of SamDrivers or in "index" subfolder!
pause
goto :eof

:DelIdx
:: delete old DIA indexes
for /r "%~dp0%IdxPath%DIA" %%f in (*.hwid *.txt) do if not exist "%~dp0%DrvPath%drivers\%%~nf.7z" del /f /q "%%f"

:: delete old DPS indexes
for /r "%~dp0%IdxPath%DPS" %%f in (*.hash *.txt) do call :CheckDPSIdx "%%f"

:: delete old SDI indexes
for /r "%~dp0%IdxPath%SDI" %%f in (*.bin) do if not exist "%~dp0%DrvPath%drivers\%%~nf.7z" del /f /q "%%f"

goto :eof

:CheckDPSIdx
set DPName=%~n1
if not "%DPName:~-8%"=="_Drivers" goto :eof
if not exist "%~dp0%DrvPath%drivers\%DPName:~0,-8%.7z" del /f /q %1
goto :eof

:GetCmdDir
if /i "%~n1"=="index" set IdxPath=
set DrvPath=..\
goto :eof
Просьба добавить исправленную версию в набор.
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:12, 08-12-2019 | #3502