ターミナル内からWi-Fi情報を取得するにはどうすればよいですか?


11

ターミナル内からBSSIDと利用可能なWi-Fiネットワークのリストを取得する方法はありますか?

ifconfig run0 scanつまり、すべてのアクセスポイント、BSSID、信号強度などを一覧表示するOpenBSDのようなものを探しています。

回答:


25

使いたい空港ユーティリティが埋葬されています。/ usr / local / binにユーティリティへのシンボリックリンクを作成し、次のコマンドですばやくアクセスできるようにします。

sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/local/bin/airport

これで、airport -sBSSIDを使用して使用可能なネットワークのリストを実行および取得できるはずです。

メニューバーでWiFiネットワークを開いているときにオプションキーを押したままにすると、BSSIDを一度に1つずつ表示することもできますが、OpenBSDのCLIのようなバージョンが必要なようです。

更新:

私はもともと、この答えを書いてから、「ルートレス」AKAシステムの完全性保護(SIP)が作るこれ、OSXに追加されている/usr/bin/usr/sbin 、読み取り専用。を使用するのが適切/usr/local/binであるため、シンボリックリンクがそこに作成されるように回答を更新しました。


4
シンボリックリンクを作成するよりも、シェルの初期化でエイリアスを作成するほうがよいでしょう。alias airport="/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport"sudo特権を必要としないため、管理者以外のユーザーも同様に使用でき、他のユーザーには影響しません。
MacLemon 2013

1
1)「良い」は相対的です。あなたがMacの唯一のユーザーである場合、管理者以外のユーザーや他のユーザーは問題にならず、コマンドが$ PATHのどこかにリンクされていることは、他のスクリプトやシェルで使用できることを意味します(ただし、 / usr / local / bin /にリンクします)。2)このairportコマンドは、下位互換性を懸念している人のために、少なくとも10.6以降、場合によってはその前にあります。10.8でもまだ残っています。
TJ Luoma 2013

TJが提案したのと同じ理由でシンボリックリンクを提案しました。これは、$ PATHにリンクさせる必要があるためです。そのため、シンボリックリンクで問題が発生する可能性が低くなると考えました。さらに、多くのユーザーは.profileまたは.bash_profileを使用しません(または使用方法を知っています)。どちらのソリューションも完璧に機能します:)
2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.