Linuxのファイルから文字列とワイルドカード文字を出力する方法は?

Linuxのファイルから文字列とワイルドカード文字を出力する方法は?

したがって、ログ/テキストファイルがあります。そのファイルには多くの情報がありますが、特定の文字列だけを取得したいと思います。

@@204,clientDisconnect,"apMac"="60:d0:2c:3a:f2:60","clientMac"="8c:45:00:84:e8:98","ssid"="Th","userId"="","wlanId"="240","iface"="wlan32","tenantU,19",,"userName"="d","vlanId"="512","radio"="a/n/ac","encryption"="WPA2-AES","osType"="Android","hostname"="Galaxy-S9","firstAuth"="1580412687","associationTime"="1580411444","ipAssignTime"="1580412688","disconnectTime"="1580412724","sessionDuration"="37","disconnectReason"="8","rxFrames"="26","rxBytes"="4415","txFrames"="93","txBytes"="22693","peakRx"="4415","peakTx"="22693","rssi"="62","receivedSignalStrength"="-43","Instantaneous

ただしdisconnectReason = "8"、クライアントの接続が失われた理由によって接続の切断回数が変わることがあります。ファイルを検索し、ワイルドカード文字を含む文字列のみを出力する方法がわかりません。

私はそれを出力したいです:

disconnectReason ="8"
disconnectReason ="3"
disconnectReason ="1" etc.....

ベストアンサー1

あなたが言ったことによると、この問題を解決する方法はいくつかあります。この方法で十分です。

grep -oE '"disconnectReason"="[0-9]+"' yourfile

-ogrep返す文字列の一致部分のみを通知します。

おすすめ記事