Wednesday, January 2, 2008

The Command Prompt still lives in Windows Vista






Like many of you out there, my background in operating systems goes way back to the Command Prompt. In those days, all there was to the user interface was a > symbol and a blinking cursor. And the screen was monochrome--either light orange or bright green on a dark grey background. The rest was up to you and your imagination.

We've come a long way since then and are now preparing ourselves for a bright future with Windows Vista's Aero interface topped off with the Glass theme and all the other visual goodies that come with it. However, even though the fancy Windows user interface offers just about everything that I could ask for in an operating system, the old computer user in me still wants to open the Command Prompt and take my aged DOS skills out for a walk around the block. And why not? You can still accomplish some amazing tasks with just a couple of keystrokes. Granted, you have to know about and understand the commands that you have at your disposal.
Well, if you're like me, then you'll be glad to know that the developers at Microsoft have kept us in mind, even as they've been crafting the new Aero interface. The Command Prompt still lives in Windows Vista, the majority of the great command line tools introduced with Windows XP are still available, and there are several new native command line tools for us old timers to investigate. Plus, there are a few tricks that you'll want to know about. Let's take a look.

Opening the Command Prompt
To begin with, you can open a Command Prompt window in Vista in all the same ways that you can in Windows XP. You can use the Command Prompt shortcut on the Start menu or you can type CMD in the Run dialog box. When the Command Prompt window appears, you'll notice the new version number and the fact that the default user profile directory is now C:\Users rather than C:\Documents and Settings. Figure A shows the Windows Vista' Command Prompt window overlapping Windows XP's for comparison.

Figure A






You can better see the subtle differences in the Command Prompt windows when they appear with one overlapping the other.

You'll also notice that the new Command Prompt window takes advantage of Vista's Aero user interface window style with the new the Maximize, Minimize, and Close buttons and rounded corners. In Windows XP, the Command Prompt window uses the Windows Classic style. (Keep in mind that the default color scheme of the Command Prompt environment is still grey text on a black background.)

When you access the Command Prompt Properties dialog box, you'll find that the controls are almost identical. The only difference is that the Options tab in Windows Vista no longer provides the Display Options panel, which contained the Window and Full Screen settings. In fact, I received an error message when I pressed the Full Screen shortcuts keys [Alt][Enter]. It appears that running a full screen Command Prompt window in Windows Vista is no longer possible.


User Account Control (UAC) applies
As you may have guessed, there are command line tools that require administrative privileges and bring up what I'll call the Command Prompt equivalent of the User Account Control (UAC). For example, when attempting to run the Fsutil command from my local user account, which is an Administrator account type, I encountered the message shown in Figure B.

Figure B



There are command line tools in Windows Vista that require administrative privileges in order to run.

While this isn't exactly a UAC prompt like those in the GUI, it did force me to close the current Command Prompt window, return to the Start menu, right-click on the Command Prompt shortcut, and select the Run As Administrator command. I then encountered a regular UAC, as shown in Figure C.

Figure C


In order to run the Command Prompt administrative privileges you must go through a UAC.

While this was an inconvenience the first time I encountered it, it really won't be a big deal in the future, because I'll know that for certain command line tools, I'll have to use the Run As Administrator command. So I still don't mind working around UACs because I appreciate the level of protection they offer.

A few new command line tools
There appears to be quite an impressive list of command line tools in Windows Vista; however, the Windows Help and Support tool is still under construction and the command line tools aren't yet documented here. However, if you turn to the Help command at the command prompt itself, you'll see that all of your favorite command line tools are still available. You'll also find some very basic information on syntax and usage for the new command line tools, as I mentioned earlier.

The first new command line tool I encountered is Icacls, which is like Cacls on steroids. Even though Cacls is still available in Windows Vista, Icacls is designed as its replacement. In fact, when you run Cacls a note appears that reads:

Cacls is now deprecated, please use Icacls.

An odd word choice, I must admit. If Microsoft were actually going to denounce, condemn or denigrate Cacls, I would think that they would just remove it from the operating system.

In any case, Icacls is designed to not only display and modify ACLs but also to backup and restore ACLs for files and directories. In order to perform all these tasks, Icacls comes with a very hefty list of parameters and switches.

The next command line tool, Robocopy, isn't really new at all, it's just never actually been part of the operating system. Robocopy has been part of the Resource Kit toolbox since Windows NT 4.0. As you may know, Robocopy is an extremely robust copy utility that many folks use instead of Copy and Xcopy.

Another new, yet obscure, command line tool is called Mlink, and is used to create symbolic and hard links between files and folders. For example, I could use this tool to essentially map C:\CurrentWork, so that it points to C:\Documents and Settings\Greg Shultz\My Documents\My Work\Freelance\TechRepublic\July 06. This would save my from having to navigate though a long directory tree when working with files in the July 06 folder. Instead I could simply access CurrentWork.

Conclusion
As I experiment with Windows Vista Beta 2, I'll continue reporting on all of the new and improved features in this edition of the operating system. As always, if you have comments or information to share about Windows Vista's Command Prompt, please take a moment to drop by the Discussion area and let us hear.

No comments: