mlevon
  - Longevity: 9 years 4 months
- Posts: 65
- REPUTATION:0[+] [-]
|
НЕ совсем уверен что правильно написал.... Я в этом вообще не разбираюсь. Мысль понял.Смущает вот это: for %%I in (C D E F G H I J K L M N O P Q R S T U V W) do dir %%I:%n% Мне кажется тут I это переменный индекс цикла проверки. Но вот что дальше, не понимаю.
|
Ander_73
  - Longevity: 8 years
- Posts: 3916
- REPUTATION:127[+] [-]
|
puhpol, простите, что вмешиваюсьset n=здесь прописать путь к $OEM$ for %%I in (C D E F G H I J K L M N O P Q R S T U V W) do dir %%I:%n% Смысл этой строки - поиск устройства. Т.е. после команды dir надо проверять errorlevel. Например, так:set n=здесь прописать путь к $OEM$ for %%I in (C D E F G H I J K L M N O P Q R S T U V W) do dir %%I:%n%&&(set OEMPath=%%I:%n%&goto Success) echo Устройство не найдено!&exit :Success Теперь у нас в переменной OEMPath находится полный путь к $OEM$
|
mlevon
  - Longevity: 9 years 4 months
- Posts: 65
- REPUTATION:0[+] [-]
|
Теперь у нас в переменной OEMPath находится полный путь к $OEM$ В таком случае, во второй части скриптаif exist %n%\$OEM$\nul SET OEM=/m:%n%\$OEM$ как должно быть?
|
vovan1982
  - Longevity: 10 years
- Posts: 1139
- REPUTATION:78[+] [-]
- Location: Ростов-на-Дону
|
puhpol, да на скорую руку сваял. Да нужно поиск организовать.
|
Ander_73
  - Longevity: 8 years
- Posts: 3916
- REPUTATION:127[+] [-]
|
У нас получился сломанный телефон. Я ответил puhpol, а он просто вырвал строку из правильного контекста :) Проблема исходных скриптов в том, что они жёстко задают путь поиска. А именно:SET DD=_WIN SET MM=1032 SET IN=NI ... set IP=%%I:\!DD!\!MM! То есть мы ВСЕГДА ищем install.* по пути X:\_WIN\1032\
|
mlevon
  - Longevity: 9 years 4 months
- Posts: 65
- REPUTATION:0[+] [-]
|
@echo off setlocal enabledelayedexpansion SET n=Sources for %%I in (C D E F G H I J K L M N O P Q R S T U V W) do dir %%I:%n%&&(set OP=%%I:%n%&goto Success) echo Could not find oem folder!&exit :Success SET DD=Sources SET MM=Win7 SET IN=NI for %%I in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( set IP=%%I:\!DD!\!MM! dir /d !IP!\install.wim&&set IN=!IP!\install.wim dir /d !IP!\install.esd&&set IN=!IP!\install.esd dir /d !IP!\install.swm&&set IN=!IP!\install.swm IF !IN! NEQ NI goto :INST ) IF %IN% EQU NI ( echo ERROR - COULD NOT FIND INSTALL.WIM(ESD,SWM) in %DD%\%MM% folder! pause pause goto:RBT ) :INST echo %IP% if exist X:\sources\unattend.xml SET UN=/unattend:X:\sources\unattend.xml if exist %IP%\unattend.xml SET UN=/unattend:%IP%\unattend.xml if exist %IP%\_unattend.xml SET UN=/unattend:%IP%\_unattend.xml if exist %OP%\OEM\nul SET OEM=/m:%OP%\OEM if exist %OP%\$OEM$\nul SET OEM=/m:%OP%\$OEM$ set ST=X:\Setup.exe if exist %IP%\Setup.exe set ST=%IP%\Setup.exe if not exist %ST% goto :BAD cd /d %IP% %ST% /installfrom:%IN% %OEM% %UN% goto :RBT :BAD dir X:\ /b echo Cannot find %ST% ! echo. :RBT exit @echo Press a key to reboot now... pause wpeutil reboot pause :QUIT exit Вот в таком виде не подхватывает папку оем.
|
vovan1982
  - Longevity: 10 years
- Posts: 1139
- REPUTATION:78[+] [-]
- Location: Ростов-на-Дону
|
mlevon, и не подхватит. Забыл слэш поставитьfor %%I in (C D E F G H I J K L M N O P Q R S T U V W) do dir %%I:\%n%&&(set OP=%%I:\%n%&goto Success)
|
mlevon
  - Longevity: 9 years 4 months
- Posts: 65
- REPUTATION:0[+] [-]
|
A нижняя часть в норме?if exist %OP%\OEM\nul SET OEM=/m:%OP%\OEM if exist %OP%\$OEM$\nul SET OEM=/m:%OP%\$OEM$
|
Ander_73
  - Longevity: 8 years
- Posts: 3916
- REPUTATION:127[+] [-]
|
\nul убери или замени на >nul
|
vovan1982
  - Longevity: 10 years
- Posts: 1139
- REPUTATION:78[+] [-]
- Location: Ростов-на-Дону
|
Ander_73, зачем \nul убирать? Это значит идет проверка наличия папки, а не файла.
|
puhpol
  - Longevity: 10 years
- Posts: 891
- REPUTATION:75[+] [-]
|
Господа Спасибо, Я вас понял. mlevon Значит мой вариант должон отработать. З.Ы. Они вам сейчас весь мозг склюют. И из скрипта в две строки сделают 20.
|
puhpol
  - Longevity: 10 years
- Posts: 891
- REPUTATION:75[+] [-]
|
39998То есть мы ВСЕГДА ищем install.* по пути X:\_WIN\1032\ Бред какой -то, С чего вы взяли X: ..... Спорить не буду, я ламер.
|
Ander_73
  - Longevity: 8 years
- Posts: 3916
- REPUTATION:127[+] [-]
|
puhpol, Х - надо же было чем-то заменить букву диска  А всё остальное - из тела скрипта.
|
mlevon
  - Longevity: 9 years 4 months
- Posts: 65
- REPUTATION:0[+] [-]
|
В 1 сообщении подправленный 2 код. Тестил, работает.
|
Page 2 of 94
Current time is: 14-Feb 01:22
All times are UTC + 3
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|