LINUX.ORG.RU

Определение серийного номера HP на bash

 


0

1

Пишу скрипт на bash. Требуется узнать серийный номер принтера HP, подключённого по USB и передать этот серийный номер в файл /home/administrator/Desktop/snprinter.txt.
dmidecode - команда не подходит.
думаю реализовать через dmesg | grep usb > /home/administrator/Desktop/snprinter.txt выводит:

[22618.304480] usb 1-6: Manufacturer: MediaTek Inc
[22618.304481] usb 1-6: SerialNumber: AXDS8HY85BX
....много строк потом....
[22623.314486] usb 1-2: Manufacturer: Hewlett-Packard
[22623.314487] usb 1-2: SerialNumber: PHBLKV07575
....много строк потом....

В файл должен записаться только серийный номер PHBLKV07575

Как вычленить всё лишнее и оставить только строчку, идущую после слова Hewlett-Packard, т.е.

[22623.304487] usb 1-2: SerialNumber: PHBLKV07575

а потом вычленить всё, до дветочия и пробела, чтобы в итоге остался только номер без пробела PHBLKV07575 Естественно серийный номер будет всегда разный, но в dmesg всегда будет Hewlett-Packard встречаться. Где смотреть sn я знаю, надо именно на bash скриптик.



Последнее исправление: xaizek (всего исправлений: 3)

Ответ на: комментарий от izzholtik

Выводит все устройства usb, как и следовало ожидать от этой команды. Как вычленить только SN принтера, не визуально, а bashом

silenduhom
() автор топика

Кинь сюда кусок того из чего тебе нужно вычленить. Заверни его в [code]. Смотри в сторону grep -A, sed, awk

Pyzia ★★★★★
()
Ответ на: комментарий от Pyzia

Я и смотрю. Но не понимаю, слишком сложно. В задании я всё описал

silenduhom
() автор топика
Ответ на: комментарий от izzholtik

В том и прикол, что vid если и ивестен, то pid заранее неизвестен, т.к. неизвестно какая модель (их более 3000) из принтеров бренда HP подключен по USB заранее. Думаю, ваше решение неверно. Тут нужно иначе думать. Решение должно быть универсально для USB устройств (именно USB печатающих устройств бренда HP)

silenduhom
() автор топика
Последнее исправление: silenduhom (всего исправлений: 3)
Ответ на: комментарий от silenduhom

печатающих устройств бренда HP

Проверил это: «Manufacturer: Hewlett-Packard», передал это: «PHBLKV07575».

andytux ★★★★★
()
Ответ на: комментарий от silenduhom

Без внятного ТЗ результат ХЗ.
Алсо, проявляй хоть какое-то желание разобраться в проблеме, иначе в job.
ААлсо, если всерьёз собираешься парсить dmesg, то всячески желаю рака жопы, и интересуюсь, что, например, будешь делать на системах, где к нему у пользователя нет доступа.

izzholtik ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.