RHEL8 nmcli コマンドでデバイスdevice情報を出力

環境
# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.6 (Ootpa)

構文
nmcli [OPTIONS] OBJECT { COMMAND | help }
-t (terse)
このモードは、コンピューターのスクリプト処理に使用される場合があり、値だけを表示する簡潔な出力を確認できます。

-f (field)
このオプションでは、どのフィールドを出力に表示できるかを指定します。

-p (pretty)
このオプションを使用すると、nmcli は人間が判読可能な出力を生成します。

操作方法
1.出力内のフィールドの指定

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# nmcli -f Device,Type device
DEVICE TYPE
ens160 ethernet
lo loopback
# nmcli -f Device,Type device DEVICE TYPE ens160 ethernet lo loopback
# nmcli -f Device,Type device
DEVICE TYPE
ens160 ethernet
lo loopback

次のようなスクリプトの記述に適しています。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# nmcli -t -f DEVICE,TYPE device
ens160:ethernet
lo:loopback
# nmcli -t -f DEVICE,TYPE device ens160:ethernet lo:loopback
# nmcli -t -f DEVICE,TYPE device
ens160:ethernet
lo:loopback

2.簡潔な出力の表示

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# nmcli -t device
ens160:ethernet:connected:ens160
lo:loopback:unmanaged:
# nmcli -t device ens160:ethernet:connected:ens160 lo:loopback:unmanaged:
# nmcli -t device
ens160:ethernet:connected:ens160
lo:loopback:unmanaged:

3.pretty モードで出力の表示

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# nmcli -p device
==================
デバイスの状態
==================
DEVICE TYPE STATE CONNECTION
----------------------------------------------------------
ens160 ethernet 接続済み ens160
lo loopback 管理無し --
# nmcli -p device ================== デバイスの状態 ================== DEVICE TYPE STATE CONNECTION ---------------------------------------------------------- ens160 ethernet 接続済み ens160 lo loopback 管理無し --
# nmcli -p device
==================
  デバイスの状態
==================
DEVICE  TYPE      STATE     CONNECTION
----------------------------------------------------------
ens160  ethernet  接続済み  ens160
lo      loopback  管理無し  --