egrep을 사용하지 않고 DEVICE enp0s9의 상태를 인쇄할 수 있습니까?
$ nmcli device status
DEVICE TYPE STATE CONNECTION
enp0s3 ethernet connected Wired connection 1
enp0s9 ethernet connected Wired connection 2
lo loopback unmanaged --
$
nmcli
다음과 같은 외부 명령을 사용하는 대신 명령 만 사용하고 싶습니다 .egrep
$ nmcli device status | egrep 'D|9'
DEVICE TYPE STATE CONNECTION
enp0s9 ethernet connected Wired connection 2
$
답변1
1년 후에 문제가 발생하면 다른 사람들을 돕기 위해...
[user@host]# nmcli -g general.state device show enp0s9
100 (connected)
nmcli는 한 줄에 하나의 데이터를 표시합니다. 제공한 것과 동일한 데이터를 얻으려면 다음을 수행하십시오.
[user@host]# nmcli -m multiline -g general.device,general.type,general.state,general.connection device show eth0
GENERAL.DEVICE:enp0s9
GENERAL.TYPE:ethernet
GENERAL.STATE:100 (connected)
GENERAL.CONNECTION:Wired connection 2
이것을 제거 -m multiline
하면 키워드 접두사가 없는 기본 형식이 제공됩니다.
[user@host]# nmcli -g general.device,general.type,general.state,general.connection device show eth0
enp0s9
ethernet
100 (connected)
Wired connection 2
옵션 생략-g 일반 상태아래와 같이 사용 가능한 모든 데이터가 제공됩니다.
[user@host]# nmcli device show eth0
GENERAL.DEVICE: enp0s9
GENERAL.TYPE: ethernet
GENERAL.HWADDR: B6:20:89:30:E8:03
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: Wired connection 2
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: 10.10.0.100/16
IP4.GATEWAY: 10.10.0.1
IP4.ROUTE[1]: dst = 10.10.0.0/16, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = 10.10.0.1, mt = 100
IP4.DNS[1]: 1.1.1.1
IP4.DNS[2]: 1.1.1.2
IP6.ADDRESS[1]: fe80::652c:ff98:a178:aa73/64
IP6.GATEWAY: --
IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 100
IP6.ROUTE[2]: dst = ff00::/8, nh = ::, mt = 256, table=255