Ifconfig versus ipconfig versus ifconfig

This has happened to me so many times I thought I'd post a clarification here to help myself remember, while passing it off as a legitimate blog post topic. Clever yes? Don't answer that.

Having moved to Unix-like systems from Windows when I finished high school I'm used to firing up my shell and entering ifconfig with either the -a option or by specifying a specific network interface such as eth0 to find out DHCP assigned IP addresses, subnet masks, grilled cheese sandwiches and the like.

ipconfig on FreeBSD
Xfce Terminal on FreeBSD with ThinIce theme

As shown below, on Windows the command is deceptively similar in all but one letter: ipconfig. As with the classic DOS goodness Windows replaced the commands also accept flags with forward-slashes instead of short dashes.

ipconfig on FreeBSD
Command Prompt on XP with the least ugly Windows theme

ASIDE: According to the completely infallible Wikipedia, ifconfig sloppily stands for "interface configurator", whereas ipconfig stands for "internet protocol configuration". Don’t you just love unambiguous commands?

It's interesting how our minds change isn't it? I started using our DOS desktop back before I even started primary school and I got so used to the commands they became second nature. Since moving to the wonderful world of FreeBSD and cross pollinating my knowledge on similar GNU/Linux, NetBSD, Mac OS X and OpenSolaris machines, my DOS knowledge hasn't been forgotten, but it's become something I have to "think" to use. If I had a cent for every time I attempted to type and use ls and top on Windows machines now, I'd have at least enough cash for a grilled cheese sandwich with at least avocado and onions.

Mac OS X Leopard Terminal.app
Mac OS X Leopard Terminal.app

Two grilled cheese sandwich references in one post, three including this sentence. I'm on a roll. Wait I'm not discussing eating a "roll", it's a "grilled cheese sandwich". Wait, that's four times. Grilled cheese sandwich.