More than 1,100 4sysops readers took part in this poll. I asked whether a graphical user interface (GUI) or a command line interface (CLI) was preferred when it comes to Windows administration. The results are quite clear: 66% prefer a GUI tool, 17% prefer the command line, and for another 17%, it doesn't make a difference.
- Poll: How reliable are ChatGPT and Bing Chat? - Tue, May 23 2023
- Pip install Boto3 - Thu, Mar 24 2022
- Install Boto3 (AWS SDK for Python) in Visual Studio Code (VS Code) on Windows - Wed, Feb 23 2022
I suppose if I had asked this question a few years ago, we would have received an even stronger bias for the GUI. PowerShell is changing the view of many Windows admins, simply because you can now do many things on the CLI that you can't do with the admin tools that come with Windows. Before we had PowerShell, the Windows command prompt was mostly used for relatively trivial tasks like pinging a remote computer or perhaps clearing the DNS cache.
It is not difficult to guess for what I have voted. I am clearly pro GUI. It is not really that I am completely against working on command prompt. On a Linux server, I wouldn't even install a desktop environment. In my view, Windows is just not made for the command line. Perhaps this is the reason why PowerShell commands are often so longwinded.
What upsets me in this discussion is the argument that you can "automate" administration tasks with PowerShell. In my opinion, this claim is absolutely meaningless. Every piece of software is meant to automate tasks. In fact, software has no other purpose. PowerShell fans usually want to imply with this assertion that with GUI tools, you have to do everything manually and that Windows admins can save a lot of time if they finally start automating things, just as their Linux colleagues do. The main reason why Windows is so successful is because there are so many great administration tools available that allow you to automate all kinds of tasks for thousands of machines with just a few clicks.
However, that doesn't mean that I am against PowerShell. On the contrary! PowerShell is one of the most important Windows enhancements of the last years. It is probably the best programming language for Windows management. Thus, it has become a very important tool for all system management developers.
I also recommend that every Windows admin learns PowerShell. Microsoft sometimes offers only a PowerShell interface for new Windows features, probably in the hope that someone else will take on the expensive task of programming a graphical user interface. And, of course, sometimes you have no other choice than to write a script to get the job done, simply because no one else has yet written such a program or because your organization can't afford a new tool. (Even though this is not as often the case as in former times.) Some readers have pointed out that it depends on the kind of task whether a GUI or a CLI is preferable. This is certainly also true.
Subscribe to 4sysops newsletter!
The fact that one third of Windows admins can live perfectly with the command prompt also shows that, to a certain degree, the answer to this question is a matter of taste. Not all brains work the same way. I have seen admins who can type faster than I can think. If you feel comfortable on the command prompt, my anti-CLI rants won't persuade you anyway. I am the most tolerant person when it comes to the choice of the right administration tool. Just do me the favor and don't tell me that you can automate tasks just because you have PowerShell. It is like telling me that you can sit because you have the tools to build a chair and all others have to keep standing.