lshw에서 두 줄을 grep하는 방법은 무엇입니까?

lshw에서 두 줄을 grep하는 방법은 무엇입니까?

내 컴퓨터의 마더보드 일련 번호와 모델 번호를 파악하고 싶습니다. 나는 사용했다

sudo lshw | grep -m1  serial:

일련 번호에 대한 grep("serial:"이 여러 번 나타나서 첫 번째 번호를 원하기 때문입니다. 동시에 "product:"에 대한 grep과 동시에 이 작업을 수행할 수 있습니까? product도 여러 번 나타나며 첫 번째 항목은 무엇입니까?) 나는 원해요.

lshw다음을 반환합니다.

user@ubuntu:~$ sudo lshw
ubuntu-pc              
    description: Notebook
    product: 23252DG (LENOVO_MT_2325)
    vendor: LENOVO
    version: ThinkPad X230
    serial: R9TWZVR
    width: 64 bits
    capabilities: smbios-2.7 dmi-2.7 vsyscall32
    configuration: administrator_password=disabled chassis=notebook family=ThinkPad X230 power-on_password=disabled sku=LENOVO_MT_2325 uuid=01ECC0B1-8251-CB11-8538-B7D9EC435D9B
  *-core
       description: Motherboard
       product: 23252DG
       vendor: LENOVO
       physical id: 0
       version: Not Defined
       serial: 1ZPAB2AC2C1
       slot: Not Available
     *-cpu
          description: CPU
          product: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
          vendor: Intel Corp.
          physical id: 1
          bus info: cpu@0
          version: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
          serial: None

답변1

product:처음 두 행이 일치하도록 하거나 을(를) 원합니다 serial:. 그렇다면 다음을 시도해 볼 수 있습니다.

$ sudo lshw | grep -Em2 'serial:|product:'
    product: 20FWCTO1WW (LENOVO_MT_20FW_BU_Think_FM_ThinkPad T460p)
    serial: PF0P1EUH

또는 grep대상 문자열과 일치하는 모든 줄을 선택한 다음 head처음 두 개만 인쇄합니다.

$ sudo lshw | grep -E 'serial:|product:' | head -n2
    product: 20FWCTO1WW (LENOVO_MT_20FW_BU_Think_FM_ThinkPad T460p)
    serial: PF0P1EUH

물론 두 접근 방식 모두 product:첫 번째 이전에 두 번째가 있을 수 없으며 serial:그 반대의 경우도 마찬가지라고 가정합니다.

답변2

lshw클래스 만 표시하기 위해 --class또는 스위치와 함께 사용하면 첫 번째 항목만 추출하는 것에 대해 걱정할 필요가 없습니다.-csystem

lshw -c system | grep -E 'product:|serial:'

사용하지 않으려면 -c system첫 번째 발생 시 다음을 사용하고 uit할 수 있습니다 sed.qserial

lshw | sed '/serial/q;/product/!d'

값만 필요한 경우 다음을 사용할 수 있습니다 jq.

lshw -json -c system | jq '.product,.serial'

이 명령을 루트로 실행하고 있다고 가정합니다.

답변3

사용법 grep-class옵션:

sudo lshw -class system | grep 'product\|serial'

관련 정보