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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как найти строку в блоке вывода bat, но вставить другую?

Ответить
Настройки темы
CMD/BAT - [решено] Как найти строку в блоке вывода bat, но вставить другую?

Аватара для Mancoffee

Старожил


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


Конфигурация

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


Есть вывод команды bcdedit

Код: Выделить весь код
Приложение микропрограммы (101fffff)
-------------------------------
идентификатор           {08466ee1-90f9-11ef-a538-806e6f6e6963}
device                  partition=\Device\HarddiskVolume13
path                    \EFI\UBUNTU\SHIMX64.EFI
description             ubuntu

Приложение микропрограммы (101fffff)
-------------------------------
идентификатор           {58ec2b43-90b8-11ef-a537-806e6f6e6963}
device                  partition=H:
path                    \EFI\BOOT\BOOTX64.EFI
description             UEFI OS

Приложение микропрограммы (101fffff)
-------------------------------
идентификатор           {58ec2b44-90b8-11ef-a537-806e6f6e6963}
device                  partition=I:
path                    \EFI\BOOT\BOOTX64.EFI
description             UEFI OS
нужно найти идентификатор требуемой ОС и вставить её во вторую команду, но ИД находится перед названием ОС.
Как это сделать?

Отправлено: 08:29, 23-10-2024

 

Аватара для Mancoffee

Старожил


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

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


Цитата NickM:
Строки сравниваются полностью »
Наверное неправильно поняли, например один и тот же раздел может быть так "partition=\Device\HarddiskVolume7", а если подключена буква диска, то вот так "partition=H:"
И например указать для поиска как-то так (не знаю как в с bat файлом это делается, но например в AutoIt оператор OR)
Код: Выделить весь код
"E:\Programs\Boot\Reboot\Reboot to Arch.bat" "Arch" "partition=\Device\HarddiskVolume7" "Arch" "partition=\Device\HarddiskVolume7" OR "partition=H:"

Отправлено: 12:43, 25-10-2024 | #41



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для NickM

Ветеран


Contributor


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

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


Цитата Mancoffee:
И например указать для поиска как-то так »
Ну, можно и третий параметр в сценарии обрабатывать. Давайте попробуем что-нибудь придумать.

Отправлено: 12:45, 25-10-2024 | #42


Аватара для NickM

Ветеран


Contributor


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

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


Цитата Mancoffee:
И например указать для поиска как-то так »
Цитата Mancoffee:
Код: Выделить весь код
"Arch" "partition=\Device\HarddiskVolume7" OR "partition=H:"
»
Только сейчас понял эту строку.

Конкретно этого примера - так если отсутствует разница, какое устройство использовать, то опускайте второй параметр, параметр device и меняйте только первому, по параметру description.

Ведь Вы же всяко стремитесь к тому, что бы задавать записям загрузчика description уникальными.

Отправлено: 14:16, 25-10-2024 | #43


Аватара для Mancoffee

Старожил


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

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


Цитата NickM:
Давайте попробуем что-нибудь придумать. »
Ну мне думать нечем, в смысле знаний по bat в сложных вещах нет, они близятся к нулю

Кстати, я так понял, что если есть два одинаковых description, то поиск по второму параметру не катит.
Вот выполняю
Код: Выделить весь код
 "E:\Programs\Boot\Reboot\Reboot to Arch.bat" "UEFI OS" "partition=\Device\HarddiskVolume18"
И пустота, хотя в выводе он есть
Код: Выделить весь код
Приложение микропрограммы (101fffff)
-------------------------------
идентификатор           {58ec2b43-90b8-11ef-a537-806e6f6e6963}
device                  partition=\Device\HarddiskVolume18
path                    \EFI\BOOT\BOOTX64.EFI
description             UEFI OS
Цитата NickM:
Ведь Вы же всяко стремитесь к тому, что бы задавать записям загрузчика description уникальными. »
Ну это да, но как мы с вами выяснили, это либо невозможно (будет сбрасываться на оригинал), либо как-то сложно.

Отправлено: 14:25, 25-10-2024 | #44


Аватара для NickM

Ветеран


Contributor


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

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


Цитата Mancoffee:
Кстати, я так понял, что если есть два одинаковых description, то поиск по второму параметру не катит.
Вот выполняю »
Всё катит, на примере Вашего вывода:
Скрытый текст

Отправлено: 14:48, 25-10-2024 | #45


Аватара для Mancoffee

Старожил


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

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


Цитата NickM:
Всё катит, на примере Вашего вывода: »
Тогда я не понимаю, как это работает
https://youtu.be/BiPeL-1Iv9g

Отправлено: 15:21, 25-10-2024 | #46


Аватара для NickM

Ветеран


Contributor


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

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


Цитата Mancoffee:
Тогда я не понимаю, как это работает »
Как работает показано выше, на скрине.

Покажите результат выполнения только по description, только по первому параметру "UEFI OS".

Отправлено: 16:23, 25-10-2024 | #47


Аватара для Mancoffee

Старожил


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

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


Цитата NickM:
Покажите результат выполнения только по description, только по первому параметру "UEFI OS". »
https://youtu.be/b9nW3vrRNG8

Отправлено: 17:18, 25-10-2024 | #48


Аватара для NickM

Ветеран


Contributor


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

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


Ну, теперь всё ясно-понятно. Вы используете не тот сценарий, вроде как два раза указывал, какой использовать, этот.

Отправлено: 19:04, 25-10-2024 | #49


Аватара для Mancoffee

Старожил


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

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


Цитата NickM:
Ну, теперь всё ясно-понятно »
Всё равно непонятно
https://youtu.be/tpwMIgpnT2M

ПС. Так даже вообще уже ничего не находит. Тот же Arch уже не видит.

Отправлено: 19:13, 25-10-2024 | #50



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как найти строку в блоке вывода bat, но вставить другую?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Принтер - Каким образом можно вставить, лоток вывода бумаги Сanon 2900 b1844133 Прочее железо 0 15-02-2020 11:16
CMD/BAT - [решено] заменить с помощью bat'ника одну строку на другую warkdimka Скриптовые языки администрирования Windows 2 18-02-2016 09:28
[решено] В системном блоке хлопок (звук) такой как будто петарда взорвалась. Но все работает, micro8 Непонятные проблемы с Железом 17 18-03-2011 23:01
банально но как (!ПРАВИЛЬНО!) сохранить флешку и вставить её Denis Shutka Вебмастеру 1 09-01-2005 23:37
Как прекодлировать строку из одной кодировки в другую Vlad Drakula Вебмастеру 11 05-07-2004 22:56




 
Переход