Remember Matrix? Why weren't they using a mouse and a nice GUI instead of typing commands? I didn't write the script though, so I can only guess. The command line has the power, while the GUI has the looks and ease of use, and the Matrix was a battle for power, after all. I am not going to talk about the GUI anymore, so let's see a bit of command line history next...
CLIs have seen their first users over 50 years ago, when teletype machines were connected to first electronic computers. In terms of interaction and feedback, they were the first step after the punch cards. These were the dark times of computing, and I will leave that for another time, now I want to talk about the close past and future of the command line.Command Line Interfaces - past, present and future
First of all, I won't get into Unix or Mac OS, I will stick to Microsoft products and their connections with command line interfaces. It's not that I don't like them or something; the reason is extremely easy to figure out for some of you. For the others, I must say that the operating system that brought Microsoft into attention and started its ascension to the top of the mountain, MS-DOS, used a command line interface to interact with the user.
During the 80s, the command line was the only way to interact with your IBM compatible computer, until file managers started popping
up. For those who missed them, a little Google search would help a lot. I will name only three of them: Norton Commander, Volkov Commander and Dos Navigator.
What was so nice with the command line in that time? After all, the looks didn't change too much with time. In the MS-DOS days, the ability to create batch files was one of the strongest features of that OS. Instead of typing 20 commands you just wrote a .bat file and those commands could be run whenever you needed them, even on other computers.
Batch files were intended more for advanced users, the regular users had to type in commands, some with lots of parameters, in order to get the work done. This may be a good thing but also a bad thing, depends on how you take it. As today's icons strive to be the most natural representation of the programs linked to them, commands available at that time were the most natural representations possible for the actions they performed. REN, DEL, MD, CD... renaming, deletion, making directories or changing them - I am sure sounds more familiar.
As first Windows versions started appearing, the command line didn't disappear, but became more a tool for system administrators and programmers rather than regular users. Most professional programs, for example AutoCAD or MATLAB, use a mixed interface that combines a GUI's ease of use with the power of the command line. Artificial intelligence programs like Eliza also use a text interface to interact with the user.
Today, it's not something for fanatics or old timers; using the command line is becoming a tool of ultimate power. Why? Just think about telling your children to go and buy some bread. The same way you will enter commands into the command line, usual commands sound like or .
For most of us the command line is history; if you want, however, to visit a free museum, just open the Run menu, type "cmd" and hit Enter. If you're new to this, you should cry out for help. Type it, press Enter, and the rest is up to you, I am sure it's going to be a pleasant trip. Each time you look at your Windows OS from now on, just remember that behind its nice interface there's a monster at work.
Now, what about the future? Is this just another "good old times" article about dead technologies or we're going to taste the power of the command line in the years to follow?
One last thing about the present, in order to prove my words. How many or you have used the Windows XP Recovery option? For those who didn't, I just have to say that the interface is a command line, think about it!
MSH sounds familiar? Maybe Microsoft Shell rings a bell? Don't worry, you didn't miss anything yet, this is the way to the future. The giant from Redmond works on an improved command line interface able to use .NET classes in order to create and modify powerful scripts called commandlets.
Unfortunately, the MSH (codenamed Monad) still has some time left until its final release, but we can already check the pre-release product. Things look fine and can only get better from here.Conclusions
The future of the command line interface sounds extremely interesting, combining basic functionality with advanced scripting capabilities. The past is also still here, with MS-DOS running in a large number of embedded systems due to its low memory and processing power requirements.
For regular users, the command line is nothing compared to 15 years ago, but there's one thing that can't be avoided. If you think about the CLI as the wheel of every operating system, it will always be there, even if the attention will be drawn by other items.
In the end, the battle between past and future in the CLIs' field will have one certain winner: power users, system administrators and programmers. For the rest of us, it was and still is an interesting battle to watch, even if it's mostly hidden to the public. After all, the hardest battles take place in the shadows...