|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Найти строку и в ней записать в переменную содержимое между кавычек. |
|
CMD/BAT - Найти строку и в ней записать в переменную содержимое между кавычек.
|
Новый участник Сообщения: 35 |
Всем привет!
Необходимо пройтись поиском по каждой строке во всём файле, найти определенную строку(несколько слов вхождений) и в этой найденной строке записать в переменную слова, находящиеся между кавычек. Как пример, ищем в файле ниже строку "Serial Number", затем в ней извлекаем значение "11325":
Upd. bat-файл будет грузиться только с FreeDOS. |
|
Отправлено: 13:27, 03-04-2018 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Iska, Каюсь, поставил на флэшку MS Dos 8. Там возможности CMD очень ограничены. FreeDos похоже не радостнее. ИМХО, решить поставленную задачу, только используя команды CMD, вряд ли возможно. Я не понимаю суперцель поставленной задачи, но, если надо загрузиться с флэшки и что-то отобразить из файла, возможное решение - наваять exe-файл на каком-нибудь забытом турбо-си/паскале/бейсике. Вот если бы можно было перенести CMD из Windows, например, 7 на флэшку со всеми основными утилитами. Пока не нашел как.
|
------- Последний раз редактировалось megaloman, 05-04-2018 в 16:21. Отправлено: 14:07, 05-04-2018 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать |
Отправлено: 20:26, 05-04-2018 | #12 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать тут можно провести аналогию по работе до загрузки в систему, что мы обычно используем - Total Commander. Брать его в пару и крутить его рычаги, больше ничего в голову не идет.
|
Отправлено: 21:17, 05-04-2018 | #13 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата rango13:
Цитата rango13:
Цитата megaloman:
Если б Вы объяснили общую задачу, в том числе — зачем (почему/для чего/с какой целью) нужно сие проделывать именно то, что описано, и именно из-под DOS, может быть, стало бы понятнее. |
|||
Отправлено: 01:38, 06-04-2018 | #14 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Теперь зачем ещё прописывать значения Motherboard и Product Number: почему-то в матплатах от ASUS(которые у нас только и закупаются) эти значения пустуют - а через утилиту(AmideDOS.exe) эти значения можно прописать в BIOS и их как раз и вытащит клиент-сборщик Spiceworks. Проблема в том, что есть много ПК, где эти параметры не прописаны. В bat-файле я хотел передавать ему только Serial Number, а остальные два значения чтобы прописывались автоматом. В итоге все эти данные с помощью отчёта из Spiceworks автоматом собираются в единую таблицу Excel, по которой видно, что нужно модернизировать в новом году. |
|
Последний раз редактировалось rango13, 08-04-2018 в 05:50. Причина: добавил ссылку на AmideDOS.exe Отправлено: 05:43, 08-04-2018 | #15 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Может быть, можно пользоваться не FreeDOS, а чем-то ещё подобным, чтобы скрипт работал полноценно?
|
Отправлено: 05:45, 10-04-2018 | #16 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать rango13, дык, не факт, что Ваша утилита заработает под «чем-то ещё подобным» (коим является только Windows с WinAPI). Выход подсказали выше:
Цитата megaloman:
![]() |
|
Отправлено: 07:30, 10-04-2018 | #17 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Цитата Iska:
1. Скачал FreeDOS USB “Full” installer 2. Вытащил с него программу GREP и скопировал её на имеющуюся USB-флешку с FreeDOS и использовал GREP для нахождения необходимых строк. Не знаю почему, но команды FIND/FINDSTR("Invalid command") в этом дистрибутиве нет. 3. Т.к. матплаты только от ASUS в организации, то остается прописать два параметра: модель матплаты и серийный номер, чего скрипт и делает: Скрытый текст
@ECHO OFF amidedos /BM | GREP "(/BM)" amidedos /BP | GREP "(/BP)" amidedos /SS | GREP "(/SS)" set /p MODEL=Enter MotherBoard Model: set /p INV=Enter Inventory Number: amidedos /SM "ASUS" > null 2>&1 amidedos /BM "ASUS" > null 2>&1 amidedos /BMH "ASUS" > null 2>&1 amidedos /SP "%MODEL%" > null 2>&1 amidedos /BP "%MODEL%"> null 2>&1 amidedos /BPH "%MODEL%" > null 2>&1 amidedos /SS "%INV%" > null 2>&1 amidedos /CS "%INV%" > null 2>&1 cls ; Вывод итогового результата работы скрипта amidedos /BM | GREP "(/BM)" amidedos /BP | GREP "(/BP)" amidedos /SS | GREP "(/SS)" |
|
Отправлено: 12:07, 11-04-2018 | #18 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать rango13, Вы что-то путаете с:
Цитата rango13:
Скрытый текст
![]() |
|
Отправлено: 01:12, 12-04-2018 | #19 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Если что, для накатывания FreeDOS на USB-флешку использовал программу Rufus. У неё при форматировании флешки можно сразу сделать её загрузочной и записать на неё FreeDOS. Может, просто урезанная версия там. |
|
Отправлено: 05:28, 12-04-2018 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Как записать в переменную результат выполнения команды? | MSI | Скриптовые языки администрирования Windows | 64 | 24-12-2020 18:20 | |
CMD/BAT - [решено] Узнать имя пользователя и записать в переменную | Darkar25 | Скриптовые языки администрирования Windows | 37 | 13-01-2018 23:59 | |
CMD/BAT - Поиск 1ой папки и записать ее в переменную | Andreyk1s | Скриптовые языки администрирования Windows | 2 | 06-01-2017 23:31 | |
CMD/BAT - найти файл и записать в переменную | pzh2393 | Скриптовые языки администрирования Windows | 7 | 20-01-2013 03:35 | |
CMD/BAT - [решено] Найти в реестре параметр и записать в переменную имя ветки в которой он находится | root221 | Скриптовые языки администрирования Windows | 11 | 25-11-2012 07:54 |
|