Soon the be turned into the North Legacy Trail, Phase 2:
Thanks to osxdaily.com for this tip.
First, do this (one-time operation):
$ sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/local/bin/airport
Then, anytime you want to query the nearby Wi-Fi networks, make sure Wi-Fi is enabled, and do this:
$ airport -s
This will create output that looks like this (B/SSIDs changed to protect the innocent 🙂 ):
SSID BSSID RSSI CHANNEL HT CC SECURITY (auth/unicast/group)
XXXX 1a:2b:3c:4d:5e:6f -66 149 Y US WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -68 6 Y -- WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -43 6 Y US WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -65 6 Y -- WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -84 1 Y US WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -70 1 Y US WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -58 1 Y US WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -86 11 Y -- WPA(PSK/AES/AES) WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -85 11,-1 Y US WPA2(PSK/AES/AES)
XXXX 1a:2b:3c:4d:5e:6f -58 11 Y US WPA2(PSK/AES/AES)
macOS (tested on 10.11.6):
sudo lsof -i :80
…where ’80’ is the port you’re curious about (substitute any value)
Thanks to Databasically.
Windows (tested on 10 Pro version 1709):
…this will produce a list of ports in use and the PIDs using them)
Thanks to @RickVanover.
netstat -npl | grep 8013
…this will find the name of the process running on port 8013. Thanks to Vivek Gite at nixCraft.
Ever end up with messages like these in your Linux system’s system log? (/var/log/messages or journalctl or whatever system log system you’re using)?
Apr 1 08:09:27 machinename kernel: ProcessNameThatCrashed: segfault at 00000000e5c5e000 rip 00000000081473d0 rsp 00000000e5c5aa30 error 4
In my case, error 4 means “The cause was a user-mode read resulting in no page being found.”
As commenter “LittleAncientForestKami” explains, maybe not rocket science, but since I had no idea how to figure this out, really appreciated.
So, I thought I’d figure out what “rip” and “rsp” meant. “rsp” is probably a little hard to use, but “rip” is the address of the instruction where the crash occured, and you can figure out what function it points to using this technique described by StackOverflow user qrtt1:
objdump -d ProcessNameThatCrashed | less” (where “ProcessNameThatCrashed” is the name of the crashing app)
A few (or maybe many) lines up from the line matching the address in question, you should see the name of the function that crashed:
81473c4: 55 push %ebp
81473c5: 89 e5 mov %esp,%ebp
81473c7: 83 ec 18 sub $0x18,%esp
81473ca: 8d 55 fc lea 0xfffffffc(%ebp),%edx
81473cd: 8b 45 08 mov 0x8(%ebp),%eax
81473d0: 8b 00 mov (%eax),%eax
In this case ‘fourBytesNetworkToHost’ is the name of the function that crashed.
Assuming you have Homebrew installed already: