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

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

Старожил


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

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


Baranius, поправил скрипт.
Код: Выделить весь код
@Echo Off
SetLocal EnableDelayedExpansion

Set OldPList=test.plc
Set Output=new.plc
Set IndexFile=index.txt

rem Переписываем заголовок файла в новый плейлист
For /F "usebackq delims=" %%A In ("%OldPList%") Do (
    Echo %%A>"%Output%"
    GoTo Break
)
:Break

rem Разбираем строки старого плейлиста на составляющие
Echo Processing "%OldPList%"...
For /F "usebackq skip=1 tokens=1,2,3 delims=^|" %%A In ("%OldPList%") Do (
    Set NewFilePath=
rem Ищем строку с таким же временем в индекс-файле
    For /F "tokens=2 delims=^|" %%P In ('Type "%IndexFile%"^|Find "%%C"') Do (
        Set NewFilePath=%%P
    )
	Echo Search for %%B
rem Генерируем строку нового плейлиста
    If Not "!NewFilePath!"=="" (
        Echo %%A^|!NewFilePath!^|%%C>>"%Output%"
    ) Else (
        Echo %%A^|%%B^|%%C^|%%D>>"Error.log"
	Echo    ERROR: "%%B" not found in %IndexFile%, write to error.log
    )
)
Echo All done
Pause
Такие урезанные до трех полей плейлисты в аимпе работают замечательно, он сам потом пересоздает недостающие поля.
Это сообщение посчитали полезным следующие участники:

Отправлено: 05:49, 02-06-2012 | #22