Automatically disable Wifi when an Ethernet connection (cable) is plugged in on a Mac This article describes a bash script for Mac OSX 10+ that automatically disables Wi-Fi when an Ethernet cable is connected and re-enables it when the cable is disconnected. The script, which requires administrator privileges to install and run, supports OSX Notification Center and is designed to work without hard-coding adapter names. Installation involves copying the script and a plist file to specific directories, setting permissions, and loading the plist as a launch agent. This is a bash script that will automatically turn your wifi off if you connect your computer to an ethernet connection and turn wifi back on when you unplug your ethernet cable/adapter. If you decide to turn wifi on for whatever reason, it will remember that choice. This was improvised from this mac hint to work with Yosemite, and without hard-coding the adapter names. It's supposed to support growl, but I didn't check that part. I did, however, add OSX notification center support. Feel free to fork and fix any issues you encounter. Most the credit for these changes go to Dave Holland. - Mac OSX 10+ - Administrator privileges - Copy toggleAirport.sh to/Library/Scripts/ - Run chmod 755 /Library/Scripts/toggleAirport.sh - Copy com.mine.toggleairport.plist to/Library/LaunchAgents/ - Run chmod 600 /Library/LaunchAgents/com.mine.toggleairport.plist - Run sudo launchctl load /Library/LaunchAgents/com.mine.toggleairport.plist to start the watcher - Run sudo launchctl unload /Library/LaunchAgents/com.mine.toggleairport.plist to stop the watcher - Delete /Library/Scripts/toggleAirport.sh - Delete /Library/LaunchAgents/com.mine.toggleairport.plist - Delete /private/var/tmp/prev eth on - Delete /private/var/tmp/prev air on To debug, just run: sudo /Library/Scripts/toggleAirport.sh and add echo's wherever you'd like