When I started writing scripts several years ago, only a few GUI utilities were available. Today, many GUI utilities are available for managing and monitoring everything from Active Directory (AD) to NTFS file permissions.

So, what's the difference between a GUI utility and a script? A GUI utility is like a luxury automobile. The luxury car is designed by people who aren't familiar with your specific driving requirements, so they include all the features they think you might need. Consequently, although the car is feature-rich, it's heavy, not very responsive, and not that fast. In contrast, a script is like a high-performance race car that you built to meet your specific driving requirements. Thus, although the car has no creature comforts, it's light, agile, and fast.

Being agile and fast is important for systems administrators because part of their job is to quickly develop solutions for problems that pop up. A solution might involve looking for a particular version of software in the registry on all the computers in your network, detecting the existence of a virus-related file in the root of the C drive on all your machines, or quickly verifying the members of the Administrators group on all your servers. Although these special tasks are the playground for scriptwriters, it's not really economically feasible for GUI utility vendors to offer tools to perform these simple but crucial tasks.

However, when a task is complex, buying a GUI utility might be easier than scripting a solution. Many GUI utility vendors have seen the interest in scripting increase and are building in command-line interfaces that let you use a script to call many or all of a utility's functions. So, if you're purchasing a GUI tool, be sure to verify with the vendor that it has a command-line interface.