Boy, y'all seem to be youngsters! The first DOS I used was IBM-DOS 2.0; the first Windows I saw (no one sane actually tried to use it) was Windows 286. As for Linux, the GUI isn't so much an afterthought as an option. We routinely didn't bother installing it on networking equipment or servers, as all it did was suck up CPU cycles that could be better-used for the devices' primary purposes. GUIs are fine for end-user-facing systems, as they tend to be easier to use for common-place uses. But as was said previously, you don't get the complete power of the system unless you have the ability to drop into a terminal session and run the commands from the command line with all their options. Even if a GUI frontend to the commands gives you access to all the flags, it will almost never give the the scripting ability the CLI will, to send the output of one command directly to the input of another among other things.