Nun-Nun
09-05-2009, 20:34
Не пинайте, если что не так! Я ещё не волшебник, я только учусь! :-)
Проблема в следующем: есть постоянно увеличивающийся набор самораспаковывающихся exe-шников со схожими именами типа Fileconstant1XXXXXXFileconstant2.exe , причём, в именах всех этих файлов, те куски, что обозначены Fileconstant1 и Fileconstant2 , всегда одинаковы для всех файлов, а куски, обозначенные символами XXXXXX , у разных файлов разные. Необходимо распаковать exe-файлы, а из получившейся кучи выбрать файлы .msp и каждый переименовать в соответствии с названием XXXXXX-часи того exe-шника, из которого .msp-файл извлечён. Проблема осложняется тем, что, во-первых, exe-шники должны распаковываться с ключами /Q /C /T:C:\Temp , а во-вторых, файлы .msp внутри разных exe-шников могут иметь одинаковые имена, поэтому, при простом извлечении содержимого всех exe-шников в общую кучу часть .msp файлов затирается.
Пытаюсь смастерить для этого дела bat-ник, но нормального результата так и не добился, никак не удаётся создать маску для имени exe-шников и вычленить из них эту XXXXXX.
SET Namepath=%C:\Temp
SET Namefile0="Fileconstant1??????Fileconstant2.exe"
SET Namefile1=%Fileconstant1??????Fileconstant2.exe:~0,13%
SET Namefile2=%Fileconstant1??????Fileconstant2.exe:~13,6%
SET Namefile3=%Fileconstant1??????Fileconstant2.exe:~-17%
SET Namefile4=%Namefile2%
@START "%Namefile0% /Q /C /T:C:\Temp" - не работает
REM FOR %%s IN (*.exe) DO %%s "/Q /C /T:C:\Temp" - затирает файлы .msp
REM FOR %%h IN (%Namepath%\*.msp) DO REN "%Namepath%\%%~nx1" "%Namefile4%.msp" - не работает
P.S. Разумеется, в названиях exe-шников XXXXXX заменены на ?????? для маски.
Проблема в следующем: есть постоянно увеличивающийся набор самораспаковывающихся exe-шников со схожими именами типа Fileconstant1XXXXXXFileconstant2.exe , причём, в именах всех этих файлов, те куски, что обозначены Fileconstant1 и Fileconstant2 , всегда одинаковы для всех файлов, а куски, обозначенные символами XXXXXX , у разных файлов разные. Необходимо распаковать exe-файлы, а из получившейся кучи выбрать файлы .msp и каждый переименовать в соответствии с названием XXXXXX-часи того exe-шника, из которого .msp-файл извлечён. Проблема осложняется тем, что, во-первых, exe-шники должны распаковываться с ключами /Q /C /T:C:\Temp , а во-вторых, файлы .msp внутри разных exe-шников могут иметь одинаковые имена, поэтому, при простом извлечении содержимого всех exe-шников в общую кучу часть .msp файлов затирается.
Пытаюсь смастерить для этого дела bat-ник, но нормального результата так и не добился, никак не удаётся создать маску для имени exe-шников и вычленить из них эту XXXXXX.
SET Namepath=%C:\Temp
SET Namefile0="Fileconstant1??????Fileconstant2.exe"
SET Namefile1=%Fileconstant1??????Fileconstant2.exe:~0,13%
SET Namefile2=%Fileconstant1??????Fileconstant2.exe:~13,6%
SET Namefile3=%Fileconstant1??????Fileconstant2.exe:~-17%
SET Namefile4=%Namefile2%
@START "%Namefile0% /Q /C /T:C:\Temp" - не работает
REM FOR %%s IN (*.exe) DO %%s "/Q /C /T:C:\Temp" - затирает файлы .msp
REM FOR %%h IN (%Namepath%\*.msp) DO REN "%Namepath%\%%~nx1" "%Namefile4%.msp" - не работает
P.S. Разумеется, в названиях exe-шников XXXXXX заменены на ?????? для маски.