iwconfigインターフェースモードを変数に保存する方法

iwconfigインターフェースモードを変数に保存する方法

ワイヤレスインターフェイスのモードを変数に保存するスクリプトを作成します。つまり、iwconfigのモード出力を保持するために$modeという変数が必要です。 iwconfig が "Mode:Managed" モードを返すと、"Managed" が変数 $mode に割り当てられ、iwconfig が "Mode:Monitor" が返されると、"Monitor" が $mode 変数に割り当てられます。究極の目標はこれを行うことでecho $modeあり、「モニタリング」または「ホスティング」を返します。

ありがとうございます。

答え1

解決策sed

mode=$(iwconfig | sed -n '/Mode:/s/.*Mode://; s/ .*//p')

これは、以下を含む行で実行されます。モデル:、行の先頭から、以下を含むすべての項目を削除します。モデル:を押してから、最初のスペースから行末まですべての内容を削除します。

-nオプションは、処理された行の印刷を抑制しますsed。このpコマンドは関心のある線を出力します。

その後、コマンドの結果がに割り当てられますmode

確かに唯一の方法ではありません。

このソリューションは特定のiwconfig出力形式を前提としており、予告なく変更されることがあります。つまり、危険です。

関連情報