Windows is very powerful from the command line too. With tools like powershell, devcon, wmic, etc, you have near total control. I had to write a test program which had to be smart enough to find four ethernet ports, which could be named anything (eg "Local Area Connection 17"), set their IP addresses, send pings to see who is connected to which reference port, and then get the number of bytes sent and received. You can easily do all this using wmi, netsh, and ping. Good luck doing it on linux. I'm sure its possible, but damn, where is the documentation? Where is the easily searchable (ie google) database of sample commands? How to get the syntax correct when all info is buried and obscure? With windows, its all well documented, and it generally works.