Если у вас есть GNU awk
Я бы предложил что-то вроде этого:
gawk 'BEGIN{RS="-+\n"} $0=="" || /ord:chandru/ && /KEY:ZZ/ {ORS=RT; print}' sample.txt
-------------
ord:chandru SAM
XY DUPL
KEY:ZZ
-------------
ord:chandru SAM
XY DUPL
KEY:ZZ
-------------
$ 0 == ""
просто принудительно печатает пустые записи (именно так будет интерпретироваться первая строка вашего файла, если вы считаете, записи должны быть разделены строками дефисов).
Если у вас нет gawk
, то на самом деле единственная разница состоит в том, что вы не можете легко захватить разделитель записей - в приведенном вами примере это не так уж и много проблема, поскольку это фиксированная строка. Так, например, с mawk
:
mawk 'BEGIN{RS="-------------\n"; ORS=RS} $0=="" || /ord:chandru/ && /KEY:ZZ/ {print}' sample.txt
-------------
ord:chandru SAM
XY DUPL
KEY:ZZ
-------------
ord:chandru SAM
XY DUPL
KEY:ZZ
-------------
Некоторые драйверы устройств компилируются вместе с ядром, что означает, что они уже загружены при запуске ядра. А некоторые другие находятся в initrd
, и загружаются вместе с ядром при загрузке.
После загрузки ядра оно отправляет uevent
s в пространство пользователя. udev
их видит и загружает соответствующие модули в соответствии с правилами, содержащимися в файле modules.alias
.
Подробнее о udev(Архив , страница перемещена сюда)