[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Спасибо Вам за науку, ученье
1) И все-же мне интересно - что, соовсем никак не заработает такой самопал чтоли?
IFEX d:\$OEM$,OEM=d:\$OEM$
При команде
MESS %OEM%
возвращается
0
А по моей идее
При команде
MESS %OEM%
должно возвращаться
d:\$OEM$
2) Вы здесь вроде как писали, но потом зачеркнули...
https://www.usbtor.ru/viewtopic.php?p=102419#102419
3) Могу ошибаться, но у меня НЕ работает эта команда
FORX /s:1 @\sources\autounattend.xml,ff,0,LSTR bkk=2,%ff%
Однако другая - работает отлично
FORX /s:1 @\sources\$OEM$,f,0,LSTR bk=2,%f%
В чем глобальная разница - то, что работает - ищет папку с названием $OEM$, то что НЕ работает ищет xml файл с названием autounattend
4) Возможно или нет применить команду
FORX /s:1 @\sources\$OEM$,f,0,LSTR bk=2,%f%
только найти папку sources, а не $OEM$
Я пробовал ниже - не работает
FORX /s:1 @\sources,f,0,LSTR bk=2,%f%

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
102424
И все-же мне интересно - что, соовсем никак не заработает такой самопал чтоли?
Код:
IFEX d:\$OEM$,OEM=d:\$OEM$
Пропустил команду ENVI
IFEX d:\$OEM$,ENVI OEM=d:\$OEM$ //если есть файл(папка) d:\$OEM$ - присвоить переменной ОЕМ = d:\$OEM$
Повнимательнее...
---------
FORX @\sources,f,0,LSTR bk=2,%f%
FORX \sources\autounattend.xml,f,0,LSTR bk=2,%f%
--------
@- для каталогов

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Пропустил команду ENVI
IFEX d:\$OEM$,ENVI OEM=d:\$OEM$ //если есть файл(папка) d:\$OEM$ - присвоить переменной ОЕМ = d:\$OEM$
Повнимательнее...
---------
FORX @\sources,f,0,LSTR bk=2,%f%
FORX \sources\autounattend.xml,f,0,LSTR bk=2,%f%
--------
@- для каталогов
1) Спасибо Вам за науку, ученье
2) По нормальному, чтобы работало у меня, когда команда
FORX /s:1 @\sources\$OEM$,f,0,LSTR bk=2,%f%
у меня на выхлопе пишется так
https://disk.yandex.ru/i/qtENZyVodcnZbg
D:\sources\$OEM$
Когда заменил команду
FORX /s:1 @\sources\$OEM$,f,0,LSTR bk=2,%f%
на
FORX @\sources,f,0,LSTR bk=2,%f%
то беда
https://disk.yandex.ru/i/3eNY703jfrREmw
X:\sources
Что не так, почему не работает?
В плане, по нормальному, чтобы работало у меня, когда команда
FORX @\sources,f,0,LSTR bk=2,%f%
у меня должно выдаваться не
X:\sources
а с буквой D
D:\sources
Спасибо.

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
В первом случае идёт поиск папки @\sources\$OEM$
Во втором поиск папки sources на всех разделах
FORX @\sources,f,0,MESS %f%
Если в корне других разделов тоже будет папка sources - она найдется тоже.

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Тогда никак нельзя чтоли как-то уникально, есть папка $OEM$ или нету папки $OEM$, есть файл autounattend.xml или нету файла autounattend.xml - определить букву диска D:\, чтобы использовать как переменную %bk%
ENVI OEM=%bk%\sources\$OEM$
Например, в корне iso образа у меня есть файл-маркер WIN61 - типа если в корне есть файл-маркер WIN61 - то присвоить букву диска

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
SharkyEXE,
Правильно !!!
Для определения нужного раздела как раз и нужен файл-маркер
определяем букву раздела
FORX \WIN61,f,0,LSTR bk=2,%f%
определяем где находятся папка $OEM$
FORX @%bk%\sources\$OEM$,ff,0,mess %ff%
...
ну и так далее

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Спасибо Вам за объяснение, что и как, хоть немного научиться
Еще момент: изначально в примере, что я нашел в интернете, там как-то сделано перечислением
FORX * autounattend.xml unattend.xml _unattend.xml,DEnvi,IFEX %DPath%\%DEnvi%,ENVI UN=/unattend:"%DPath%\%DEnvi%"
FORX * OEM $OEM$,DEnvi,IFEX %DPath%\%DEnvi%\,ENVI OEM=/m:"%DPath%\%DEnvi%"
Пожалуйста, а никак и у нас нельзя сделать перечислением как-то?
С папкой
Не две строки
IFEX %bk%\sources\$OEM$\,TEAM ENVI OEM=/m:"%bk%\sources\$OEM$"|ENVI oem=1!ENVI oem=0 // если папка есть oem=1,если нет oem=0
IFEX %bk%\sources\OEM\,TEAM ENVI OEM=/m:"%bk%\sources\$OEM$"|ENVI oem=1!ENVI oem=0 // если папка есть oem=1,если нет oem=0
А в одну строку
IFEX %bk%\sources\$OEM$ ИЛИ OEM,TEAM ENVI OEM=/m:"%bk%\sources\$OEM$ ИЛИ OEM"|ENVI oem=1!ENVI oem=0 // если папка есть oem=1,если нет oem=0
Тоже самое и с xml файлом
Не три строки
IFEX %bk%\sources\autounattend.xml,TEAM ENVI UN=/unattend:"%bk%\sources\autounattend.xml"|ENVI xml=1!ENVI xml=0  // если файл есть xml=1,если нет xml=0
IFEX %bk%\sources\unattend.xml,TEAM ENVI UN=/unattend:"%bk%\sources\unattend.xml"|ENVI xml=1!ENVI xml=0  // если файл есть xml=1,если нет xml=0
IFEX %bk%\sources\_unattend.xml,TEAM ENVI UN=/unattend:"%bk%\sources\_unattend.xml"|ENVI xml=1!ENVI xml=0  // если файл есть xml=1,если нет xml=0
А в одну строку
IFEX %bk%\sources\autounattend.xml ИЛИ unattend.xml ИЛИ _unattend.xml,TEAM ENVI UN=/unattend:"%bk%\sources\autounattend.xml ИЛИ unattend.xml ИЛИ _unattend.xml"|ENVI xml=1!ENVI xml=0 // если файл есть xml=1,если нет xml=0

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
SharkyEXE,
Попробуй лучше сделать по-другому, на основе того же скрипта.
-------------------
Начни скрипт с определение места папки $OEM$ и autounattend.xml.
Если они находятся НЕ в папке Sources просто скопируй их туда и продолжай скрипт как есть.
------------------
Думаю, так будет проще.
Попробуй...

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Да не проще, точнее у Вас прозрачнее решение, пусть и много строк для разных названий OEM, xml
В том решении - мало строк, но хрен пойми, как там пеерчисляются допустимые названия, селектор, разных названий OEM, xml
Решение того скрипта - тупо и без мозгов папку OEM и xml засунуть в папку sources - это дурацкое, тупейшее решение, без обид
Просто в том скрипте я НЕ могу вылезти из папки sources
Не обижайтесь, пожалуйста, я предполагал, что и у Вас можно облагородить, мол на разное название папки не две строки, а одна строка + на разные названия xml не три строки, а одна строка...

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
SharkyEXE,
перечисление
FORX* autounattend.xml unattend.xml _unattend.xml,xx,
{IFEX %bk%\sources\%xx%,ENVI UN=/unattend:"%bk%\sources\%xx%"
mess %xx%
}
подправил
FORX \WIN61,f,0,LSTR bk=2,%f%
FORX* autounattend.xml unattend.xml _unattend.xml,xx,
{IFEX %bk%\sources\%xx%,ENVI UN=/unattend:"%bk%\sources\%xx%"
mess %UN%
}


Last edited by avalat on 2024-02-19 13:21; edited 3 times in total

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
О, супер, класс, спасибо Вам огромное
Осмелюсь мои пять копеек, с папкой ОЕМ или $OEM$ будет так?
Оригинал в скрипте из интернета
FORX * OEM $OEM$,DEnvi,IFEX %DPath%\%DEnvi%\,ENVI OEM=/m:"%DPath%\%DEnvi%"
Аналог
FORX* OEM $OEM$,yy,
{IFEX %bk%\sources\%yy%,ENVI OEM=/m:"%bk%\sources\%yy%"
mess %yy%
}

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
SharkyEXE,
если уж хочется в одну строку -
FORX* autounattend.xml unattend.xml _unattend.xml,xx,IFEX %bk%\sources\%xx%,ENVI UN=/unattend:"%bk%\sources\%xx%"
для проверки -
FORX* autounattend.xml unattend.xml _unattend.xml,xx,TEAM IFEX %bk%\sources\%xx%,ENVI UN=/unattend:"%bk%\sources\%xx%"|MESS %UN%

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Ой, большое Вам спасибо за помощь.
Вопрос не в одну строку, просто если как-то возможно оптимизировать, при этом код понятен, перевариваем, даже и для не особо алле, хоть немного и мне научиться, понять, разобраться...
Осмелюсь и для папки OEM - если не так, просьба поправить, пожалуйста
1) По образу и подобию как здесь (https://www.usbtor.ru/viewtopic.php?p=102433#102433)
FORX* OEM $OEM$,yy,
{IFEX %bk%\sources\%yy%,ENVI OEM=/m:"%bk%\sources\%yy%"
mess %yy%
}
...................
FORX* OEM $OEM$,yy,
{IFEX %bk%\sources\%yy%,ENVI OEM=/m:"%bk%\sources\%yy%"
mess %OEM%
}
...................
2) По образу и подобию как здесь (https://www.usbtor.ru/viewtopic.php?p=102435#102435)
в одну строку -
FORX* OEM $OEM$,yy,IFEX %bk%\sources\%yy%,ENVI OEM=/m:"%bk%\sources\%yy%"
...................
для проверки -
FORX* OEM $OEM$,yy,TEAM IFEX %bk%\sources\%yy%,ENVI OEM=/m:"%bk%\sources\%yy%"|MESS %OEM%

[Quote]

    SharkyEXE
  • 16220
  • Longevity: 7 years
  • Posts: 49
  • REPUTATION:1

    [+] [-]
avalat, здравствуйте
Проуш прощения за бестолковость, а возможно или нет сделать комментарий
- не одна строка один комментарий на каждую из 100 строк, то есть 100 строк у каждой отдельный комментарий (символ // в начале строки)
-- а один комментарий на 100 строк
Например, в HTML языке это так
<!-- I am a comment! -->
где
I am a comment!
хоть 100 строк, хоть 100500 строк
Например, в Autoit языке это так
#comments-start
        MsgBox($MB_SYSTEMMODAL, "", "This won't display ")
        MsgBox($MB_SYSTEMMODAL, "", "nor will this.")
#comments-end
где
MsgBox($MB_SYSTEMMODAL, "", "This won't display ")
MsgBox($MB_SYSTEMMODAL, "", "nor will this.")
хоть 100 строк, хоть 100500 строк
или
#cs
MsgBox($MB_SYSTEMMODAL, "", "This will display if '#cs/#ce' are commented out.")
MsgBox2($MB_SYSTEMMODAL, "", "This will display if '#cs/#ce' are commented out.")
MsgBox3($MB_SYSTEMMODAL, "", "This will display if '#cs/#ce' are commented out.")
#ce
где
MsgBox($MB_SYSTEMMODAL, "", "This will display if '#cs/#ce' are commented out.")
MsgBox2($MB_SYSTEMMODAL, "", "This will display if '#cs/#ce' are commented out.")
MsgBox3($MB_SYSTEMMODAL, "", "This will display if '#cs/#ce' are commented out.")
хоть 100 строк, хоть 100500 строк
Спасибо.

[Quote]

    avalat
  • 222
  • Longevity: 9 years 4 months
  • Posts: 423
  • REPUTATION:127

    [+] [-]
SharkyEXE,
Можно так
_SUB
100500 строк
_END

Page 25 of 27


Display posts:    

Current time is: 25-May 23:02

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