Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I would like to know what benefits the average geek could get out of Powershell. So take people who spend all their time in front of their computer, but who aren't necessarily programmers. Gamers, anime and hardware freak, or just general computer geeks. What benefits would these non-technical users get out of learning a command line/scripting language? Any increase of productivity?

I have always been intrigued by command-line/scripting tools, because geeks far cooler (geekier) than I use them and swear by them. But besides automating a folder RAR-ing and backing up over a network share once per week, I don't know what uses command-lines would be for someone like me, but perhaps I would find it more useful once I learned it?

Any ideas?

share|improve this question

migrated from stackoverflow.com Aug 8 '09 at 12:36

This question came from our site for professional and enthusiast programmers.

1  
Average geek questions belong on superuser.com –  LeakyCode Aug 8 '09 at 11:30
    
Mehrad: unfair, as superuser is private beta –  eliben Aug 8 '09 at 11:31
2  
Isn't powershell a programming language as well? –  PRINCESS FLUFF Aug 8 '09 at 11:46
    
It is a programming language but that aspect doesn't really seem to be the focus of your question. –  EBGreen Aug 10 '09 at 1:54
    
@eliben - Anyone who wants to can get into the Beta. –  EBGreen Aug 10 '09 at 1:54

5 Answers 5

up vote 2 down vote accepted

I would say that even using the windows command line helps my productivity. I have a heap of automated tasks that run such as automated shutdown, file backups or you could even start the programs you normally use on startup if you aren't prepared to add things to the registry. (You can tell windows to run things or scripts by using the Task Scheduler application) A simple batch file could be used to do this:

echo on
echo "Starting your favourite programs"
firefox
"C:\Program Files\Pidgin\Pidgin.exe"
"C:\Program Files\VideoLan\VLC\vlc.exe"
echo "Done"

So long as you put it in the startup directory as a .bat file: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\

Or if you know a bit about the powershell, which is basically just batch on a few Unix steroids you could easily backup your work or files with the running of a simple file

cp "C:\Important Files\*" "D:\Important Files Backup\" -recurse

Obviously I don't know much about powershell, but with a little knowledge you can automate a lot of tasks that might otherwise take you a longer time to do manually.

share|improve this answer

Powershell is a tool. Just like any tool it only helps you if it fits your problem. Geekness is such a broad term that there is no average problem. Also like any tool it becomes more useful the more you use it and get practice with it.

share|improve this answer

Powershell is a tool for administrators to automate tasks across a broad deployment of machines or to administer specific applications. Some of the cooler features include being able to traverse the registry from the ps> prompt like it was a mounted volume, recursion, and manipulation of any WMI object. Also, Exchange 2007 and SQL Server 2008 are built on top of powershell, so many GUI tools for managing these are built on powershell.

So, basically, unless you're an average geek that does heavy automation through batch scripting already or you play with SQL Server 2008 in your free time, you're not going to gain too much.

share|improve this answer

I personally see not much use from Powershell as programmer. Yes, it can be helpful at times but mostly its an overkill for my tasks and I usually stick to cmd.exe. I'd reckon most beneficial Powershell is for network administrators of all kinds - those who need advanced tools for automating maintenance tasks and such...

share|improve this answer

If you're spending any time at the command line, you should be using PowerShell.

CMD's syntax is really screwy, after decades of backwards-compatible hacking. Every time you learn a little more of it, you're occupying a piece of your brain with a technology that needs to die soon.

Put PowerShell in your brain instead. It is 100x more powerful, and 100x more sane. It also knows how to talk to .NET and WMI, and how to remote itself.

Once you know PowerShell, you're now more qualified to work as a sysadmin. The PowerShell team deliberately plans their product so that putting PowerShell on your resume makes sense.

If you don't use the command line already, then you're probably fine without knowing PowerShell. But if you think you'd like to try command lines, then start with PowerShell, not with CMD.

Two good starting resources:

Windows PowerShell Getting Started Guide: http://msdn.microsoft.com/en-us/library/aa973757(VS.85).aspx, which is nicely free and easy to get.

Lee Holmes' Windows PowerShell Cookbook: http://oreilly.com/catalog/9780596528492, which gives you specific solutions to specific problems.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.