Abhängig von meinem Ziel (Sollte ich mir auch Gedanken über das Herunterfahren der Datenschnittstelle machen?) Kann ich den Plan entsprechend auswählen:
Plan A für (1) Netzwerkschnittstellen und (2) Datenschnittstelle
Plan B für (1) Netzwerkschnittstellen
(Plan A # 1) Informationen zu installierten Hardwareschnittstellen (einschließlich Datenschnittstellen) abrufen:
Zunächst möchte ich wissen, über wie viele und welche Arten von Schnittstellen ich mir Sorgen machen sollte.
$ networksetup -listallhardwareports
Hardware Port: Bluetooth DUN
Device: Bluetooth-Modem
Ethernet Address: N/A
Hardware Port: Ethernet
Device: en0
Ethernet Address: ff:ff:ff:ff:ff:ff
Hardware Port: FireWire
Device: fw0
Ethernet Address: ff:ff:ff:ff:ff:ff:ff:ff
Hardware Port: Wi-Fi
Device: en1
Ethernet Address: ff:ff:ff:ff:ff:f
(Plan A #?) (Optional) Nur die Liste der Netzwerkschnittstellen abrufen:
Dieser Schritt macht es mir leicht grep.
$ networksetup -listallnetworkservices
An asterisk (*) denotes that a network service is disabled.
Ethernet
FireWire
Wi-Fi
(Plan A # 2) Ruft den Gerätenamen der Netzwerkschnittstellen ab.
Ich möchte wissen, welche Netzwerkschnittstelle (n) aktiv ist / sind.
$ ifconfig
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether ff:ff:ff:ff:ff:ff
media: autoselect (none)
status: inactive
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether ff:ff:ff:ff:ff:ff
inet6 ffff::ffff:ffff:ffff:ffff%en1 prefixlen 64 scopeid 0x5
inet 192.168.1.fff netmask 0xffffff00 broadcast 192.168.1.fff
media: autoselect
status: active
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
lladdr ff:ff:ff:ff:ff:ff:ff:ff
media: autoselect <full-duplex>
status: inactive
(Plan B # 1) Suchen Sie den airportBefehl oder legen Sie den Alias für den airportBefehl fest, wenn er nicht erkannt wird:
Mein System konnte den airportBefehl nicht erkennen , daher musste ich die folgende Zeile hinzufügen .bash_profile.
alias airport='/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport'
(Plan B # 2) Überprüfen Sie den aktuellen AirPort-Status:
$ ./airport -I
agrCtlRSSI: -10
agrExtRSSI: 0
agrCtlNoise: -10
agrExtNoise: 0
state: running
op mode: station
lastTxRate: 100
maxRate: 100
lastAssocStatus: 0
802.11 auth: open
link auth: fffffffffffffffff
BSSID: ff:ff:ff:ff:ff:ff
SSID: MelvNetwork
MCS: 15
channel: 6
(Plan A & B # 3) Ein- und Ausschalten des AirPort:
# For OS X 10.7 and later
$ networksetup -setairportpower en1 on # Turn on Airport
$ networksetup -setairportpower en1 off # Turn off Airport
# for OS X 10.6 and below
$ networksetup -setairportpower on # Turn on AirPort
$ networksetup -setairportpower off # Turn off AirPort
(Plan A & B # 4) Ein- und Ausschalten des BlueTooth:
Laden Sie blueutil hier .
$ blueutil status # Check status of BlueTooth
Status: on
$ blueutil on # Turn BlueTooth on
$ blueutil off # Turn BlueTooth off
Skript:
Nachdem ich alle Zutaten habe, kann ich das Skript für OS X 10.7 schreiben!
Letzte Kommentare:
(1) Einige der Ausgaben sind mit dem Zeichen 'f' maskiert.
(2) Entsprechend $ man networksetupkönnen Sie auch den Proxy, TCP / IP, PPPoE konfigurieren (nicht getestet).
(3) Der Vorschlag von @ RichHomolka networksetup --enableuserprofileist für OS X 10.7 veraltet (in anderen Versionen nicht getestet).
(4) Wenn jemand, der das oben beschriebene Verfahren befolgt, auf ein Problem stößt, können Sie es bitte im Kommentar (oder in einer separaten Antwort) ansprechen?