Microsoft Replaces Command Prompt with PowerShell in Latest Windows 10 Build (softpedia.com)
Bogdan Popa, writing for Softpedia:The latest Windows 10 insider build brings a change that puts the Windows PowerShell in the spotlight, as it replaces the super-popular Command Prompt in some essential parts of the operating system. Command Prompt has been around for as long as we can remember, but starting with Windows 10 build 14971, Microsoft is trying to make PowerShell the main command shell in the operating system. As a result, PowerShell officially replaces the Command Prompt in the Win + X menu, so when you right-click the Start menu, you'll only be allowed to launch the more powerful app. Additionally, in File Explorer's File menu and in the context menu that appears when pressing Shift + right-click in any folder, the old Command Prompt will no longer be available. Typing cmd in the run dialog will launch PowerShell as well, so Microsoft has made a significant step towards phasing out the traditional Command Prompt.
Every time you open a command prompt, don't forget you have to enter "set-executionpolicy unrestricted" before you can actually run anything.
Usable!
If they get rid of COMMAND.COM, I'm going straight back to CP/M.
No, bashing Windows has long been a staple theme in here.
I know Powershell and it has been around for a while now, but it's almost always less mental effort on my part to string together shell commands than to open the Powershell ISE and read up on keywords and object attributes. It's habit, but I'd rather keep the thing I'm used to. I know bash scripting and perl too and I can be productive in perl but it's almost always faster for me just do what I need with bash, so I suppose the analogy is similar.
-- I wanna decide who lives and who dies - Crow T. Robot, MST3K
Microsoft registered WindowsPowersHell.org for a reason, people!
I love Powershell, but half the "admins" I've worked with still don't know how to really use it. It's not an enhanced command or command+, it's a completely different product that unfortunately looks similar enough that non-technical people are going to have no frigging idea what's going on.
This is going to cause a nightmare for call center staff who all have scripts that say something along the lines of "Open a command prompt and ...".
I don't see how forcing people to use it is supposed to win people over or fail to piss off people who want the old command prompt.
As a long-time Windows admin/systems guy, I think it's definitely time to do this. The batch language is very easy to use for procedural scripts, but in the world of things like desired state configuration, API-driven everything, etc. it makes sense to have a scripting language that basically makes the same calls a compiled program would.
I think the two major drawbacks that are presenting a learning curve are the syntax and the "scripting Legos" aspect. Syntax is...interesting. I have tons of cross platform experience so I have good understanding of lots of command languages. PowerShell's syntax is like DCL (the OpenVMS script language,) Bash and Perl got together and had a 3-parent baby. It's extremely verbose a la DCL, yet extremely symbolic like Perl, and has Bash-like constructs in there as well. Once you get used to it it makes sense, but there's definitely some learning before you're proficient enough to write full redistributable tools in it. The other thing that puts a lot of people off, but that's actually great about it, is that commands don't output text and you have to think things like object types. Bash, batch files or VBScripts have to include tons of logic to parse output, read/write INI files or XML data, etc. That gets reduced to a single statement -- want a CSV of the output? Export-Csv replaces tens of lines of function code to open a file, construct the strings and write them out. It's awesome but very different from the craft-your-own days....just like writing modern software, it's just gluing someone else's code Legos to each other and interfacing with APIs. It's hard to tell what you should be writing and what is already written for you and you're just assembling if you're used to building it all yourself and manipulating stuff with sed/awk/grep and friends.
That said, it's definitely time for Windows admins to get on board with PowerShell. Admins that survive the next transition are going to be managing thousands of servers or microservice instances at some IT provider. You can't manage systems at that scale by manually connecting to them and tweaking things. It's the same thing with Microsoft's Azure service -- it's been developer focused from Day 1, and admins are just now getting documentation that's even somewhat tailored to their experience. I know DevOps is the cool new buzzword, and every admin should have some basic coding skills under their belts, but it's hard to take someone who's been taking care of systems and telling them to treat them like software deployments. This is going to be the next big leap for systems guys now that software defined everything is pretty mainstream.
"you'll only be allowed to launch the more powerful app"
Hey Microsoft, please remind me: who owns my PC?
You could try making an alias that gets detailed help. Call it man.
Are you kidding? Call it MAN? Do that and you're gonna have a herd of SJWs down your neck in a flash.
Besides, MAN does not ask for help. Where do you get these ideas anyway?
Faster! Faster! Faster would be better!