back to article Microsoft's cmd.exe deposed by PowerShell in Windows 10 preview

Taking timeworn advice for authors to "murder your darlings," Microsoft is seemingly nudging the classic Windows Command Prompt toward the slaughterhouse door. The newly released Windows 10 Insider Preview Build 14971 for PC has made PowerShell the default command line tool, a promotion that coincides with PowerShell's 10-year …

  1. Nate Amsden

    Wouldn't want a power shell

    Any more than I'd want a perl shell.

    I'm sure it makes a fine interpreter but as a shell it has always sounded pretty terrible. I say sounds because I've never spent more than a minute or two at a time in powershell.

    Windows does have the disadvantage of having to deal with objects like the registry instead of text files. Some may like that approach more but if course isn't for everyone.

    My favorite native shell for Windows dates back maybe 20 years.. 4NT. And for dos 4DOS. Fond memories of both. I use cygwin these days though my usage is pretty limited to a dozen or two commands. 98% of my computer time is in linux

    1. Pompous Git Silver badge

      Re: Wouldn't want a power shell

      My favorite native shell for Windows dates back maybe 20 years.. 4NT. And for dos 4DOS. Fond memories of both.
      Props for that :-) Mostly I get blank looks when I mention them.

    2. billdehaan

      Re: Wouldn't want a power shell

      4NT is still around, though it's called Take Command, now.

      You can get it at www.jpsoft.com. There's a freeware lite edition called TCC/LE that is highly recommended.

      I've been using 4DOS/4OS2/4NT/TCC since 1989 or so, almost 30 years. Bash is all well and good on Unix and Linux boxes, but on DOS/OS2/Windows boxes, I find I can do more faster, and easier, than with TCC than bash or other ported Unix based shells.

    3. itzman
      Coat

      Re: Wouldn't want a power shell

      "dates back maybe 20 years.. 4NT."

      Is that Blackwood?

      (I wonder how many will 'get' that)

      1. Lodgie

        Re: Wouldn't want a power shell

        Think it's ACOL.

      2. Lodgie

        Re: Wouldn't want a power shell

        Definately a force rather than an invite to a slam...

  2. asdf
    Trollface

    ksh or nothing, thank heavens for cygwin

    Lets see type set -o vi and get Parameter cannot be processed ... You call this a shell? Even hairball extraordinaire bash can handle that.

    1. find users who cut cat tail

      Re: ksh or nothing, thank heavens for cygwin

      People who want a real shell are probably already using one.

      People who use the command line sporadically (or visit MS Windows sporadically) will not notice anything (the better case) or be confused and annoyed because of things they learned inexplicably breaking (the worse case).

      People who really like PowerShell (whoever they are) have already figured out how to use it.

      So who will benefit? Dunno.

      The list of of things PowerShell can do sounds to me a list of things ‘Why the hell a *shell* should do that?’

      1. Mage Silver badge

        Re: ksh or nothing, thank heavens for cygwin

        Yes, this change is arrogant as all that want Power Shell are using it.

        " It can, for example, pipe not just text but objects, as well. It can manage the Windows registry and Windows Management Instrumentation. It can batch rename files. It can read a list of users in an Excel file and automatically add them to an Active Directory group."

        I'll grant that the regular shell probably just pipes text, but I think you can do all the other stuff without powershell.

        ---

        Piping objects sounds a little dangerous, like Active X in a Web Page, or DCOM, or even the original OLE / COM. IMO the only place for an "Object" is in the program that created it, anything else is a reliability and security horror. OLE/Com was a bad idea. DCOM and Active X in Web pages are evil.

        Also embedding a Visio or Excel or something might seem clever and useful till you email the Word Doc to someone that only has Word. There are better ways to transfer content between Apps than the MS way.

        1. Dan 55 Silver badge

          Re: ksh or nothing, thank heavens for cygwin

          Batch rename has been around forever. It's one of the few things that the old cmd was good at. Easier than faffing round with a for and sed on Unix.

          1. Anonymous Coward
            Anonymous Coward

            Re: ksh or nothing, thank heavens for cygwin

            "Batch rename has been around forever. It's one of the few things that the old cmd was good at."

            Presumably they mean batch rename as in "here's a list of file names, here's a list of the names I want them to be". Like taking Track01.mp3 - Track10.mp3 and renaming them 01-Title.mp3 etc (terrible example, I know there are better ways for that instance)

          2. Hans 1
            Windows

            Re: ksh or nothing, thank heavens for cygwin

            Batch rename, yes, good.

            On UNIX you have the rename command, some take a regular expression, ala sed ... bliss.

            I am amused the author does not know reg.exe or wmic.exe ... those with backticks & tokens can get you quite far in cmd.exe.

            I favor find with -exec for renaming when it is simple, else file-list | sed | shell ... if a proper rename is not available ...

            PowerShell is definitely better than cmd.exe in every possible way I can think of, no, you are not dreaming, I wrote that ... if you have to manage windows boxen, I think you will quickly realize PowerShell is a must, steep learning curve, YES, but definitely worth every second of your time spent learning it ... ;-) ... it has its quirks, like any other piece of software, but it gets the job done for poor sods having to manage Windows boxen. You should retire cmd.exe/vbs logon scripts and use that, and you should, imho, use powershell instead of cmd.EXE interactively whenever possible ... it just gets more stuff done, less time fighting weird behavior of cmd.exe and some of its commands ...

        2. RS232 4 Eva

          Re: ksh or nothing, thank heavens for cygwin

          "Piping objects sounds a little dangerous, like Active X in a Web Page, or DCOM, or even the original OLE / COM. IMO the only place for an "Object" is in the program that created it, anything else is a reliability and security horror. OLE/Com was a bad idea. DCOM and Active X in Web pages are evil."

          PowerShell is just using .Net objects. It's no different than one .Net app calling a .Net API. The idea that passing unstructured text around is the best solution for anything is just bizarre.

          1. Anonymous Coward
            Anonymous Coward

            Re: ksh or nothing, thank heavens for cygwin

            "The idea that passing unstructured text around is the best solution for anything is just bizarre."

            Not really. Well, really really not really for Windows CMD.exe. Let me explain...

            We all know BASH can't handle binary data due to how Unix/C handles null. However, there is all kinds of tools available to BASH to take care of that processing. With Windows CMD, these tools are extremely limited or they just do not exist. Honestly, besides copy /b, what else does CMD have available to it for binary data?

            Objects aside, even the simplest things in BASH are extremely cumbersome in Windows CMD. For instance, null terminated lines! In BASH you'll just use a tool like 'find' and have all lines null terminated. In Windows CMD, good luck!

            Is Powershell a upgrade to CMD.exe? Absolutely. Is Powershell the best alternative? No, I think it never has been. Truthfully in my opinion, with so many shells and languages today that are better than Powershell, I can't help to think that advertising CMD's replacement with Powershell as a struggling effort to win BACK people who have already have been accustomed to many OS's that are not Windows.

            First things I have done returning to Windows for _SOLELY_ running Photoshop...

            1. Enable Hyper V

            2. Install Docker

            3. Forgetting Windows for anything other than Photoshop.

            P.S. If anyone knows how to run 10-bit color for usage in Photoshop that does NOT require running Windows as the host OS, please, please let me know! I've tried all the popular VM's and other virtualizers out there without luck. Being I'm not a "VM" guy, I'm hoping there is a way to NOT virtualize GPU hardware but still virtualize everything else...or something...anything.

            1. lameduck007

              Re: ksh or nothing, thank heavens for cygwin

              I just got a Photoshop setup using qemu-kvm and libvirt on Ubuntu.

              The ( Radeon ) video card control is passed through to windows , which needs the Radeon driver to work.

              It's blacklisted in linux , there's no emulation going on.

              Is that what you need ?

            2. Trixr

              Re: ksh or nothing, thank heavens for cygwin

              I'm no Mac fangirl, but frankly, if you detest windows so much, why on earth aren't you running PS on a Mac?

              It sounds like your environment is virtual, but there's workarounds for installing a Mac guest.

              1. asdf

                Re: ksh or nothing, thank heavens for cygwin

                >I'm no Mac fangirl, but frankly, if you detest windows so much why on earth aren't you running PS on a Mac?

                Not sure if was at me the original poster but my answer is because that is not what work bought me and these days since you have to pay me to use windows (especially since Microsoft is moving to the Google trojan horse business model) and even then I am going to use *nix tools as much as possible to get the job done because those are my weapons of choice.

          2. Anonymous Coward
            Anonymous Coward

            Re: ksh or nothing, thank heavens for cygwin

            The problem is exactly .Net. PowerShell is heavy, slow, and Windows in not a .Net application, so everything that goes down to the OS usually needs to go through the usual PInvoke or the like that slow down everything even more.

            There's a reason why administering Windows, Exchange and SQL Server became an exercise in patience while PowerShell cmdlets are called, and it's going to and from all those useless and slow .Net code. Even opening and inspecting the Event Viewer became a pain since it was moved to XML and .NET.

            1. Anonymous Coward
              Anonymous Coward

              Re: ksh or nothing, thank heavens for cygwin

              "The problem is exactly..."

              So, the environments overhead? Kind of makes you think that the problem isn't Powershell, but maybe the OS being used...

            2. Anonymous Coward
              Anonymous Coward

              Re: ksh or nothing, thank heavens for cygwin

              I just .Realized how the dot .Prefix interferes with reading because it's what us meatsacks use to indicate the .End of a sentence. I'm willing to wager the shell itself .Behaves similarly.

          3. david 12 Silver badge

            Re: ksh or nothing, thank heavens for cygwin

            >Normal users will benefit because they'll become more familar with a shell

            In the same way that they benefit from having a powerful shell language in Word and Excel?

            >PowerShell is just using .Net objects.

            Powershell is just using COM objects. That is, if you actually want to do anything like manipulate Excel, or alter the registry, or "update Active Directory from Excel", its all COM objects.

      2. RS232 4 Eva

        Re: ksh or nothing, thank heavens for cygwin

        Normal users will benefit because they'll become more familar with a shell that's both more powerful and easier to use (logical command names, aliases for commands, built-in consistent help).

        It will also benefit existing PowerShell users because they'll be able to right-click in file explorer to open up PowerShell.

        Plus, anyone who doesn't like it can just turn the setting off to switch it back to command, like you can already do for the <Win>+X menu.

      3. Anonymous Coward
        Anonymous Coward

        Re: ksh or nothing, thank heavens for cygwin

        "People who really like PowerShell (whoever they are) " - they're over there in the corner, sharing a Twix.

        Joke. Err ..

        More seriously, msg to Microsoft: stop making new changes until you've fixed the existing issues.

      4. P. Lee

        Re: ksh or nothing, thank heavens for cygwin

        >‘Why the hell a *shell* should do that?’

        Because its interactive VisualBasic for Applications?

        Ok, I'm talking well outside my skill-set here and I'm happy to be shot down for that comment, but there is a more interesting philosophical point in play.

        I'm sure it will be great for manipulating MS applications & data. What happens with 3rd party apps? This is why *nix people like tools for handling "unstructured" text - it allows us to get at the data and do things the application writers never imagined, or more likely these days, what they did imagine but didn't want you to do.

        I don't need application skills, I don't need api skills, just dump the data and I'll mess with it as required. Look at how MS use powershell - to create applications their own applications. If you don't go for the whole .net thing, you'll still need some alternative and perhaps other languages do that better.

        We are basically heading to a situation where no-one trusts the ecosystem so everyone wants to own the whole stack. First they went to linux appliances, then they went to renting via SaaS. Given MS' keenness to kill on-site servers, I suspect powershell will become "Azure Powershell for MS applications" as everyone who is not Azure-only is unlikely to invest in these interfaces.

        1. patrickstar

          Re: ksh or nothing, thank heavens for cygwin

          It's pretty trivial to write PowerShell modules and cmdlets to expose your functionality.

          Nowadays it's considered part of writing a good, manageable, Windows application, just like having an ARexx port was in the Amiga days.

          And in the case of legacy stuff or stupid devs, PowerShell does pretty OK with text processing as well (it's more or less based on Perl after all). So, in the worst case you end up with something comparable to a *ix shell or scripting language. In the best case you end up with something vastly more powerrful and suited to the Windows environment.

        2. phuzz Silver badge

          Re: ksh or nothing, thank heavens for cygwin

          Powershell can still deal with flat text files in exactly the same way you can in bash, but because it mainly deals with structured data, it's a lot easier to deal with for someone who hasn't spent twenty years using unix.

          Say you're writing a script that will output the IP of the current machine, in bash you'd pipe the output from ifconfig through a grep and a cut or two (after thinking carefully about all the possible outputs and how they might break your regex), in Powershell you'd just reference (Get-NetIPAddress).IPAddress .

          If you've spent years working in *nix shells then I'm sure the first seems easy to you, but to someone from the outside, you're taking a number, turning it to text so it can be output from ifconfig, then taking that text and chopping it up to get back to the number you want to use. Why not just use the number directly?

          1. Doctor Syntax Silver badge

            Re: ksh or nothing, thank heavens for cygwin

            "Say you're writing a script that will output the IP of the current machine, in bash you'd pipe the output from ifconfig through a grep and a cut or two (after thinking carefully about all the possible outputs and how they might break your regex), in Powershell you'd just reference (Get-NetIPAddress).IPAddress ."

            Or

            hostname -I

          2. Anonymous Coward
            Anonymous Coward

            Re: "a script that will output the IP of the current machine"

            "a script that will output the IP of the current machine"

            Gordon bennett, there's your first problem right there.

            Machines don't have IP addresses, *interfaces* do, and on any given machine there are likely multiple software-visible interfaces even if there's only one actual LAN connection.

            Does PowerShell understand that for you?

            1. patrickstar

              Re: "a script that will output the IP of the current machine"

              Get-NetIPAddress returns the addresses of all interfaces that have one. You can select a specific interface either by supplying arguments to it or by filtering the output afterwards. See https://technet.microsoft.com/en-us/library/hh826136.aspx

              1. el_oscuro

                Re: "a script that will output the IP of the current machine"

                4NT has a lot of builtin environment variables for stuff like this, i.e: %_IPADDRESS

      5. bombastic bob Silver badge
        Facepalm

        Re: ksh or nothing, thank heavens for cygwin

        "The list of of things PowerShell can do sounds to me a list of things ‘Why the hell a *shell* should do that?’"

        ACK

        Power-hell was developed [read: excreted] by Micro-shaft to promote their ".Not"tiness embedded in every OS after XP. But the server OS's were the worst. Win2k server ran on a PI with 32Mb of RAM. All versions since then have gotten piggier and piggier, thanks to ".Not".

        Micro-shaft TOTALLY screwed the pooch with the ".Not" excrement. And their Power-hell is yet another attempt at cramming it up our collective backsides, more painfully than 19 feet of curari-tipped wrought-iron fence [and without the KY to assist with the jammin'].

        ".Not" was the beginning of what went horribly, horribly wrong at Micro-shaft. "PowerHell" is their "Rosemary's baby", their bastard stepchild satan-spawn of a command line interface, slow to load and too over-complicated for its own good. I don't have enough adjectives available to describe its horror, other than to call it "PowerHell" in hopes that everyone will intuitively understand...

        I once wrote a shell for 3.x that worked pretty well. It extended the 'command.com' capabilities somewhat, offering some windows-specific things like spawning a windows program asynchronously, listing all of the running tasks, yotta yotta and some command/control features that let you send keystrokes to a window and control an application. It was shareware and never really went anywhere. When '95 released, I just stuck with CMD and that was the end of it. But 'PowerHell' - that's like "the dark side" of the force, and NOT in a good way.

        1. Rob Gr

          Re: ksh or nothing, thank heavens for cygwin

          I must admire the originality of your wit. Micro-Shaft, .Not, and Power-hell.

  3. fobobob

    Does it still take an obnoxiously long time to launch? Also, do you still need to set the execution permissions (or sign your own scripts) if you actually want to run anything?

    1. Dwarf

      @fobobob

      Don't know, for a couple of years now, mine fires up as a $ or # and does everything I want.

      I can even kick off a scripting language if that's what I want to do.

      Trying to imagine a scripting language is a shell is a bit far fetched in my mind. Agree with the other comments about perl !

    2. Adam 52 Silver badge

      It still had unfathomable signing requirements last week when I gave up and installed sed, curl and cut instead (and called them from a batch script).

    3. RS232 4 Eva

      On my PC it loads instantly. I'm sure it slows down if you have a startup profile script and lots of extra modules loading, but then it's doing a lot more.

    4. Anonymous Coward
      Anonymous Coward

      Go to Windows 10 Settings>>Developer's options. There's a option about signing.

  4. Paul Crawford Silver badge

    I can see MS' point, but then I don't really care as I use cygwin or the better native Linux shells...

    Oh dear it is useful for a few, but their number get fewer.

    Some day no one will march their at all...

    1. Anonymous Coward
      Anonymous Coward

      Upvoted for the reference. No judgment on the content.

  5. Anonymous Coward
    Windows

    Weird move...

    I consider myself a PowerShell fan, I think it's one of Microsoft's best developments so far. Giving the techie's the ability to administer almost everything from a commandline? It's awesome. Well documented, and also provides plenty of options to extend on it. Adding a few functions to your profile? Just add some documentation lines (#.SYNOPSIS [next line:] # Short explanation of my function) and it'll look and feel as if it was a native feature.

    It's for a good reason why I have PowerShell pinned on my taskbar.

    But here's the problem: in comparison to cmd.exe PowerShell is extremely bulky. For good reasons: the entire .NET library gets loaded and placed at your fingertips. But that comes at a price: performance. Just start PowerShell, then try this: Get-ExecutionPolicy -List (remember that tab completion works). You're using a controlled environment which constantly checks if you're actually allowed to run certain scripts or programs. And that's but one example.

    PowerShell is a very good thing when you're running scripts which handle server administration, but it gets annoying if all you need to do is run a simple batch file which performs some common tasks. Or if you simply want to do some basic things yourself like copying a file, running sc.exe to check on a windows service or using vssadmin to clean up any used shadow copies.

    It is for weird changes like these why I don't use Windows 10. Because how long will it take before the choice which we have now is taken away from us?

    1. tfewster
      Facepalm

      Re: Weird move...

      How is `cp file d:\directory` difficult? (especially with tab completion, [keeping tabbing until it shows the right directory e.g. 'C:\Program Files (x86)'] )

      As a Unix/Linux guy, who occasionally has to work with Windows clients, I find Power"Shell"* very useful; I can do finds, greps and diffs (frequently using their aliases mapped to Linux commands). Yes, I needed to check the man/help pages for some of the commands. But it took me hours to figure out how to use `find` in Unix from just the man pages (many years ago, with no-one, not even t'internet for help), so now I've compiled a cheat-sheet.

      Converting batch files to run under PowerShell? I'm pretty sure I could automate that - using PowerShell :-)

      * It's not just a shell that needs to load other programs to be useful like bash does; Many of the most frequently used utilities (see list above) are built in.

      I'm no fan of Microsoft, but kudos to the PowerShell team.

      1. Mage Silver badge
        Facepalm

        Re: Weird move...

        It's not that PowerShell is good or bad, we have had it for nearly 10 years and you can use it any time you want. It's the constant gratuitous changes to GUI and behaviour of the system, that's arrogant and wrong. The argument should NOT be about if Powershell is better or worse than cmd.exe, but the misleading change to user interface.

    2. RS232 4 Eva

      Re: Weird move...

      PS C:\Users\me> Measure-Command {Get-ExecutionPolicy -list}

      Days : 0

      Hours : 0

      Minutes : 0

      Seconds : 0

      Milliseconds : 3

      Ticks : 32171

      TotalDays : 3.72349537037037E-08

      TotalHours : 8.93638888888889E-07

      TotalMinutes : 5.36183333333333E-05

      TotalSeconds : 0.0032171

      TotalMilliseconds : 3.2171

      I think I can wait 3 milliseconds for it to complete. :-)

      1. IanRS

        Re: Weird move...

        I typed get-ex<TAB> and wondered whether I had crashed the shell. Several seconds later it completed the command.

      2. Prst. V.Jeltz Silver badge
        Trollface

        Re: I think I can wait 3 milliseconds for it to complete. :-)

        you must have a slow machine

        Days : 0

        Hours : 0

        Minutes : 0

        Seconds : 0

        Milliseconds : 0

        Ticks : 7488

        TotalDays : 8.66666666666667E-09

        TotalHours : 2.08E-07

        TotalMinutes : 1.248E-05

        TotalSeconds : 0.0007488

        TotalMilliseconds : 0.7488

  6. tin 2

    Illustrates my long held view that Microsoft creates the shittest version of everything. in 2016 they replaced their extraordinarily shitty shell with just a plain shitty one.

    Massively impressive.

  7. Anonymous Coward
    Thumb Down

    Yet another Windows 10 annoyance

    cmd.exe is not good, but at least it is fairly simple, and has "worked" for all versions of Windows.

    I don't want to learn yet another scripting language, particularly one with such limited portability.

    May Microsoft's executives spend a long span in purgatory trying to eat soup with chopsticks, until they grasp the notion that while users appreciate new functionality, they don't want it enforced by default.

    1. This post has been deleted by its author

      1. Doctor Syntax Silver badge

        Re: Yet another Windows 10 annoyance

        'KDE 4? Gnome 3? It's not for nothing that Mint was born - there were simply enough people fed up with having "cool stuff" shoved down their throats that they neither wanted nor needed.'

        I'm not sure I recognize that situation. There were lighter weight desktops around all along. AFAICR Mint was a response to people wanting Gnome 2 functionality when a seriously deficient Gnome 3 arrived. KDE 4 also arrived on the scene with a good deal missing in comparison with KDE 3 (although it was supposed to be an early development version not intended for serious use). Those of us using KDE do so because it actually has stuff we want and the rest don't (in my case complete control of how I use the desktop surface).

        The advantage of Unix-like systems is that they don't shove anything down anyone's throat. They provide the choice you advocate from a plain vanilla console upwards.

        1. John Crisp

          Re: Yet another Windows 10 annoyance

          "'KDE 4? Gnome 3? It's not for nothing that Mint was born - there were simply enough people fed up with having "cool stuff" shoved down their throats that they neither wanted nor needed.'

          I'm not sure I recognize that situation."

          I do with Gnome. When they decided to go all single pane crap and dropped split pane in Nautilus (they could have left it as an option but didn't). Despite lots of complaints their answer was 'our way or the highway'. It was the final straw for me and I put on my walking shoes. I'm sure I wasn't alone.

          Fortunately Mint forked Nautiless into Nemo (though I don't use Mint myself) and the world kept turning.

          1. Doctor Syntax Silver badge

            Re: Yet another Windows 10 annoyance

            "I do with Gnome. When they decided to go all single pane crap and dropped split pane in Nautilus (they could have left it as an option but didn't). Despite lots of complaints their answer was 'our way or the highway'. It was the final straw for me and I put on my walking shoes. I'm sure I wasn't alone."

            Or as I said, broken. But it wasn't a no option situation. There were existing choices, that was the point.

        2. bombastic bob Silver badge
          Devil

          Re: Yet another Windows 10 annoyance

          "there were simply enough people fed up with having 'cool stuff' shoved down their throats that they neither wanted nor needed.'"

          someone else besides me obviously "gets it". Well done!

          I mean, how much 'cool stuff'©®™ do we REALLY need? ['cool' as defined by millenials and "snowflakes" and Micro-shaft, at any rate]

          and you have the downvotes to go with the brilliance!

      2. Havin_it

        Re: Yet another Windows 10 annoyance

        >same reasons that UNIX / Linux systems still have a statically-linked (and therefore less dependent) subset of binaries in /sbin.

        Mostly only true in the initrd nowadays, from what I've seen. And under systemd, you pretty much need an initrd if your system has any kind of mount that doesn't come up instantly :(

    2. bombastic bob Silver badge
      FAIL

      Re: Yet another Windows 10 annoyance

      "cmd.exe is not good, but at least it is fairly simple, and has "worked" for all versions of Windows."

      it does what _I_ want. And I could type in 'cmd' and rapidly create a desktop icon for it, or run it from the start (what used to be) menu EASILY. So what do you type in for 'power-hell' now?

      It's just like MICROSHAFT to JAM A CHANGE FOR THE SAKE OF CHANGE into our orifices, just because they *FEEL*.

      The reason they're jamming POWER-HELL up our collective backsides is because it SUPPORTS ALL OF THAT '.NUT' CRAP. They've got ".NUT" on the brain, and it's made them ".NUTTY".

      1. Paul S. Gazo
        Stop

        Re: Yet another Windows 10 annoyance

        "it does what _I_ want. And I could type in 'cmd' and rapidly create a desktop icon for it, or run it from the start (what used to be) menu EASILY. So what do you type in for 'power-hell' now?"

        Relax. Per the article, you type in "CMD". I know, I know, change is bad, but you'll get used to it.

        "It's just like MICROSHAFT to JAM A CHANGE FOR THE SAKE OF CHANGE into our orifices, just because they *FEEL*."

        I doubt this has anything to do with *FEELING* anything. I expect it's that PowerShell has a (massive) superset of capability. I too have been lazy and spent most of my time in CMD (well, actually, like so many others here I've been using TCC), but this isn't for change's sake. Changing Outlook's icon from orange to blue was change for change's sake. Changing the default shell from a less capable one to a more capable one is a net increase in capability. Which strikes me as a pretty good justification for the change.

        "The reason they're jamming POWER-HELL up our collective backsides is because it SUPPORTS ALL OF THAT '.NUT' CRAP. They've got ".NUT" on the brain, and it's made them ".NUTTY"."

        You know, when you start playing derogatory word-games, it undermines the impact of your argument, right? Throw some "Micros$oft" and "Windoze" into the mix and maybe your point will be conveyed better, right?

        PowerShell and .NET don't have a direct relationship. .NET is a runtime that various programs can rely on. PowerShell is a command interpreter which was designed to be able to call far, far more APIs than CMD can. It's about having syntax to create, start, stop, or live-migrate a Hyper-V virtual machine. It's about having syntax to administer Exchange mailboxes. It's about having syntax to manipulate ActiveDirectory data, or Storage Spaces disk volumes, or system devices. It's pretty much got nothing to do with .NET

        So... relax. As far as changes go, this is actually a good one. This, coming from someone whose shell of choice hasn't been PowerShell. Maybe now I'll get off my lazy butt and learn more of it, and be a better IT guy because of it.

        1. Kiwi
          Coat

          Re: Yet another Windows 10 annoyance

          I doubt this has anything to do with *FEELING* anything. I expect it's that PowerShell has a (massive) superset of capability.

          A truck "...has a (massive) superset of capability..." over my motorbike. But my bike does what I want, how I want it to. Try to replace it with a truck, and I'll happily face a judge on a murder charge! (Actually I'll run you over with the truck and claim it as an accident coz I wasn't familiar with it)

          You know, when you start playing derogatory word-games, it undermines the impact of your argument, right?

          Actually, it only does that with small-minded people who don't have the capability to understand that sometimes when people get pissed off they vent, and by venting they give you a greater understanding of the depth of their annoyance.

          If micro$soft don't want derision for windoze, then they shouldn't have made it such a bloated insecure pile of shit. If they want to be treated with respect, they should do same for their users.

      2. Kiwi
        Linux

        Re: Yet another Windows 10 annoyance

        The reason they're jamming POWER-HELL up our collective backsides is because it SUPPORTS ALL OF THAT '.NUT' CRAP. They've got ".NUT" on the brain, and it's made them ".NUTTY".

        Eadon?

        Have an upvote anyway. Anything anti-MS has to be good.

    3. MJI Silver badge

      Re: Yet another Windows 10 annoyance

      Some simple commnads go odd in poweshell such as delete, but work fine in CMD.

      I LIKE CMD.EXE

      Removing it would be dangerous.

      1. arctic_haze

        Re: Yet another Windows 10 annoyance

        As long as I stick to Windows 7, they will not pry cmd.exe from my cold hands.

        Especially as I use Cygwin, anyway.

        1. Trixr

          Re: Yet another Windows 10 annoyance

          So they'll not "pry cmd.exe from my cold hands" and yet you use Cygwin anyway. Logic fail.

          I detest Cygwin - back in the NT/early 2000s days, I installed Perl on servers to get away from the dreaded VBscript when you needed to chain a lot of stuff together or do heavy string manipulations.

          But PS is even better than Perl in terms of Win systems management, and is pretty good with strings/regexes (although the -match syntax is odd). I just wish PS had an equivalent to DataDumper, which would help old batch scripters get used to what's going on inside arrays/hashtables (yes, you can do get-member, but that's not the same).

      2. bombastic bob Silver badge
        Devil

        Re: Yet another Windows 10 annoyance

        "I LIKE CMD.EXE"

        "Removing it would be dangerous."

        more reasons to stick with 7 and NOT go to "Ape" nor Win-10-nic.

        OR... if you're forced to RE-LEARN, then RE-LEARN LINUX! Or, FreeBSD!

        1. Prst. V.Jeltz Silver badge

          RE-LEARN LINUX! Or, FreeBSD!

          whats the difference?

    4. RS232 4 Eva

      Re: Yet another Windows 10 annoyance

      All the simple stuff you do in cmd works the same in PowerShell. PowerShell for Linux is a thing, so it is portable. There's an option to switch it back so they're not enforcing it's use. Why wouldn't you have the best shell as the default?

      1. Anonymous Coward
        Anonymous Coward

        Re: Yet another Windows 10 annoyance

        "Why wouldn't you have the best shell as the default?"

        Exactly.

        Now we can start the discussion about what "best" means.

      2. MJI Silver badge

        Re: Yet another Windows 10 annoyance

        RS232 4

        Actually it doesn't

        type in del *,bak in CMD nothing PS everything goes.

        VERY easy mistake

        I was saved by the backup

    5. Kiwi
      Linux

      Re: Yet another Windows 10 annoyance

      while users appreciate new functionality, they don't want it enforced by default.

      Hell, I could even live with forced new functionality, just so long as it doesn't come at the expense of old functionality/ways of doing things. I don't want to waste my time learning how to make something functional again.

      Hence why I use Linux. Gain without the pain!

    6. Prst. V.Jeltz Silver badge

      Re: Yet another Windows 10 annoyance

      Its hardly "enforced by Default" , I always start cmd by win-R to run box and type cmd

      I dont think id notice this change

    7. el_oscuro

      Re: Yet another Windows 10 annoyance

      CMD.EXE is also quite powerful if somewhat kludgey. It even has excellent man pages with detailed usage examples that can be accessed by typing in "help"

  8. GrapeBunch

    TCC

    I use the free version of TCC as a command line. Some improvements over cmd.exe, and loads in ... half a second?

    1. J.G.Harston Silver badge

      Re: TCC

      You use a Tiny C Compiler as your command shell?

      1. el_oscuro

        Re: TCC

        TCC == Take Command (4NT/4DOS)

        http://www.jpsoft.com

  9. Anonymous Coward
    Anonymous Coward

    UnderpoweredShell

    PowerShell, I've heard of it. Even used it a few times to scan for the GWX malware using commands unavailable in cmd.exe. And jeeeesus keeeerist it was slow. In the world of cars and such, "power" means "goes faster". What the hell Microsoft!

    In other news... since Win8, Linux (non-Android) has eaten 1/3 of Windows marketshare in my non-geek-site browser stats. Coincidence...?

    1. Flocke Kroes Silver badge

      Re: UnderpoweredShell

      A Bugatti Veyron goes over 400km/h with its 746kW engine. If we increase the power to over 3300kW, a BelAZ 75710 has a top speed of 64km/h. Increasing the power did not make a faster vehicle. Linux has some cut down shells (dash and lash) that might be faster than the less user hostile bash shell.

      The surprising thing about the name is the vague reference to functionality (usable as a shell). "Internet Explorer" carries with it a hint of legal liability if the software cannot be used to explore the internet. "Edge" avoids even the slightest chance of implied fitness for purpose. I am surprised powershell has not been renamed to something like "Steve" yet.

      Your browser stats are interesting. Microsoft's aggressive Windows 10 push still has not got 10 half the market share of 7 according to netmarketshare. I wonder how much of that is hardware that cannot run 10 and how much is because determined users carefully avoided the download button every week for months.

      1. Anonymous Coward
        Anonymous Coward

        Re: UnderpoweredShell

        Bash is an aging Ford Taurus, dash is a go-kart, cmd is a Model T, maybe zsh is the Bugatti... and PowerShell is the ginormous BelAZ 75710 mining dumptruck. All we wanted was a Honda Accord.

        I wonder how many people switched to Linux after 'accidentally' upgrading to Win10. Regardless, I know for a fact that the Win10 push has caused many a loyal Windows user to vow they're switching to Linux, but laziness/comfort keeps them on Win7 until their machines die.

        My stats show Linux (including ChromeOS.. meh) close behind Win10. Not quite Year of the Linux Desktop. On a tech site, it is. And anecdotally it appears Linux is winning over gamers thanks to a push from Steam and GOG.

        1. RS232 4 Eva

          Re: UnderpoweredShell

          "And anecdotally it appears Linux is winning over gamers thanks to a push from Steam and GOG."

          Non-anecdotally, Linux is nowhere with gamers:

          Windows - 95.46% (47.98% for Windows 10)

          MacOS/OSX - 3.52%

          Linux - 0.89%

          Source: http://store.steampowered.com/hwsurvey/

          1. MJI Silver badge

            Re: UnderpoweredShell

            Gamers

            Actually a lot of us due to working on PCs all day are now not PC gamers.

            My boys like PC gaming, I complain it is too much like work, except I am not being paid.

            If I have to hammer away on a keyboard I may as well get paid, Creating code!

            So what are we using?

            Consoles, quick count up at work 3 PS3, 1 PS4, 1 Xbone, and one getting a PS4 quite soon, and I am working on the Xbone owner as he plays the same game as me.

            So my 3 gaming machines all run variants of BSD.

            So I would say on gaming.

            All 3 main families Windows, Linux and BSD have many gaming machines.

            I would guess around 40% Windows (1), about 40% Linux (2) and 20% BSD (3)

            1 - Windows PCs, Xbones, X360s

            2 - Android phones and tablets, Linux PCs

            3 - Sony consoles, Apple PCs and phones

            I have no idea what Nintedo use!

            1. Prst. V.Jeltz Silver badge

              re

              1 - Windows PCs, Xbones, X360s

              2 - Android phones and tablets, Linux PCs

              3 - Sony consoles, Apple PCs and phones

              All of those are useless for playing a First Person Shooter due to lack of mouse. (or decent mnouse & os in apples case)

          2. Kiwi
            Linux

            Re: UnderpoweredShell

            Linux - 0.89%

            Source: http://store.steampowered.com/hwsurvey/

            I first installed Steam on W7 to get a feel for the windows client. I've since installed it under WINE on now 4 other machines. How do they count that I wonder?

            PS, same hardware, better performance on WINE over W7 generally. SOASER is the best example - on W7 turn many of the graphics down to "a 386 could scream this" and W7 still crawls, on Mint turn them up to "11 is somewhere waaay back there" and it only slows down somewhere over a couple of hundred planets (well about 150) and several hours into a game. Same machine, different performance.

          3. Anonymous Coward
            Anonymous Coward

            Re: UnderpoweredShell

            > Non-anecdotally, Linux is nowhere with gamers:

            Stats also said Trump was nowhere with voters.

            "Anecdotally" means technically savvy gamers sharing Linux gaming advice on forums. These gamers tend to avoid Steam because they care about DRM and privacy. They also play lots of older games in WINE and DOSBox. Those aren't reflected in Steam's stats so we can presume they're misidentified as Windows.

      2. Pascal Monett Silver badge
        Thumb Down

        @ Flocke Kroes : oh come on

        You compare a 2-ton car to a 360-ton dump truck and you only use engine power to validate your argument ?

        Let me break it down for you :

        Bugatti Veyron : 2.53kg / kW

        BelAZ 75710 : 109.09kg / kW

        It's pretty damn obvious that 3300kW isn't going to turn that monster into a dragster.

  10. jonnycando
    Meh

    Ambivalent?

    Well, I have been computing since the command line was all there was. Not a power user just an early user. I have long since abandoned Windows but had I dog in this fight, I'd probably not squawk too much if powershell becomes the default command line utility. So long as it has the usual and expected capabilities of command.com, errr....cmd.exe....and works as expected there....any new functionality should be welcome I reckon. I should be a bit surprised that Microsoft lets users have any form of command line in this day and age. Oh well, I'll stay with Linux I guess. But if there's a reason to use any OS, being able to get under the hood is a prerequisite for me.

  11. ecarlseen

    But muh scripts!

    Some of us still have a huge library of CMD scripts we rely one. Many are ancient, but they ain't broke so we never "fixed" them. I suppose we could start porting them to PowerShell, but again... they ain't broke.

    1. Flocke Kroes Silver badge

      Re: But muh scripts!

      I am not convinced that whatever command.com is called these days has been removed. I read the article carefully because I could see the looming catastrophe threatened in the title. Every opportunity to mention that existing scripts will still work was carefully avoided, and the strongest statement is the default has been changed. Reading between the lines suggests that your scripts are safe for the time being.

      But since you have mentioned it, I am sure support for traditional batch files can be removed from Windows 11 standard, but will be available with Windows 11 with extra pricey bells and whistles.

      1. Danny 14

        Re: But muh scripts!

        I too use simple batch files in GPOs to do simple tasks in startup /logon. The overhead in powershell wouldnt be unnoticed.

        Not a good move.

      2. Anonymous Coward
        Anonymous Coward

        Re: But muh scripts!

        "I am not convinced that whatever command.com is called these days has been removed"

        It hasn't - not yet, anyway. If I type "powershell" into the run dialog I get Powershell. If I type cmd.exe, I get cmd.exe.

        If I search for "cmd" I get the Command Prompt - and only the Command Prompt - as a result. If I type "powershell" then it comes up as a desktop app, along with a few other options (not including cmd.exe).

        Since I chose to evaluate it on purpose, if I hit WIN + X then I get the Powershell options only.

      3. patrickstar

        Re: But muh scripts!

        COMMAND.COM is a DOS application. I can promise you that CMD.EXE doesn't share any code or anything else except some syntax with it - the original was written in 16 bit x86 assembler...

    2. RS232 4 Eva

      Re: But muh scripts!

      If only you could just run a cmd batch script from PowerShell...

      PS C:\Users\Me> "echo `"This is a test.`"" | Out-File test.bat -Encoding ascii

      PS C:\Users\Me> .\test.bat

      C:\Users\Me>echo "This is a test."

      "This is a test."

      You can literally run cmd.exe from PowerShell, so the vast majority of use-cases should be catered for. Plus, it says in the article that there'll be a setting in the same place as the current "Replace Command Prompt with Windows PowerShell in the menu when I right-click the start button or press Windows logo key + x" setting to switch back to using cmd.

  12. joed

    feedback?

    "Asked whether there's a reason to make this change now, a Microsoft spokesperson in an email to The Register suggested PowerShell as a default isn't a certainty and encouraged feedback about the switch."

    It's taken Windows 8 to prove to most of us that customer feedback is disregarded by MS. It's got only worse since. Telemetry is to be collected and used against the users when opportunity arose. Still running the 1511 build, likely the last version on Windows on my personal machines. I surely used PS to strip all the crApps from the setup image.

    1. Anonymous Coward
      Anonymous Coward

      Re: feedback?

      "It's taken Windows 8 to prove to most of us that customer feedback is disregarded by MS."

      To be fair, much of W10 is borne out of the feedback from W8, so it's a little harsh to say they don't listen at all.

      They might not listen very quickly, or listen to individuals, but they wouldn't still be in business if they didn't listen at all.

      1. Anonymous Coward
        Anonymous Coward

        Re: feedback?

        but they wouldn't still be in business if they didn't listen at all.

        I disagree (politely, of course). MS have a default monopoly in a couple of fields, and massive footprint in a few other important areas (plus of course some areas where they're a nobody). MS don't listen, but they remain a business because there's vast financial and technical inertia, and the market has few choices. The market certainly does have other choices, but the costs of switching at a corporate level are vast. Ultimately customers will switch, but they need an innovator to provide them with an easy solution that works, and at the moment we're not seeing that offer.

        MS is like any other corporation - they are born, they grow, they mature, they become stiff and arthritic, and then they are killed by a faster, leaner predator the never even saw. MS are stiff and arthritic; We're now just waiting for the predator.

        1. Anonymous Coward
          Anonymous Coward

          Re: feedback?

          I've worked at various corporations and, as far as the sharp end of the business is concerned, I agree that the top brass absolutely do not APPEAR to listen. The trouble with the people at the sharp end, though, is that most of them want something different that is for their own exclusive benefit.

          No company could survive if it addressed every such concern (most of which are pseudo-political or crazy-guy nonsense anyway).

          Sensible stuff, and especially if it is echoed from separate sources, tends to be accumulated and at some point the corporation sees sense. Perhaps not complete sense, but more so than previously.

          Irrespective of a corporation's size, and the business momentum it therefore carries, a company which NEVER listened (first incarnation of Apple, maybe?) may find itself going under a little faster that one which at least listens a bit. (One which listened to everything would never get anywhere in the first place).

          IMO, of course.

        2. Tim99 Silver badge
          Windows

          Re: feedback?

          @Ledswinger

          Anecdotally, around here the predator is a 'phone - At least in the SMB/Director/CEO/Business Owner workspace. The Big Boys seem to have reinvented the mainframe - It is not necessarily zOS at the back end, but the display layer is a web browser or App instead of a 3270.

          I have been around this stuff for 45 years now. I saw most of the changes, and even predicted a couple (like the rise of the PC). The next thing that is happening (very quickly) is the disappearance of many traditional middle-level jobs, like administration (Mostly taking data from one place, reformatting and reducing, it and spewing it out somewhere else), and management (Tracking and enabling assets and processes). The old saw "Go away, or I will replace you with a shell script" is becoming a reality.

          You may have noticed that many jobs have become systematized and simplified, so that the individual can be easily replaced; and initiative and a true education (rather than the ability to pass a spoon-fed exam) are punished.

          Yes. I do look like this: >>=================>

      2. Mage Silver badge

        Re: feedback?

        They are "listening" to the wrong people and interpreting telemetry & feedback according to pre-conceived notions.

  13. Steve Davies 3 Silver badge
    FAIL

    Well Done Microsoft

    This will certainly drive even more users away from Windows. Is that your intent given your new found love of Linux? (I am joking ok...)

    But honestly, to think that the average person who is capable of running a few commands in the command window that basically has not changed for decades would actually want this 'thing' that strangles the system performance is yet another footgun moment IMHO.

    I guess your slurping of everyones data, sorry, telemetary will soon tell you if it is a success. If it is a failure then you will just ignore it like you do pretty well everything that your users who live and work outside your Washington State bubble tell you these days.

    IMHO, for everyone apart from a few real power users this is the wrong move. Yes you can reverse it but how many 'Joe Public' users who drop into Doc from time to time would know where to even look to reverse this idiocy.

    I saw this article and it brought a smile to my face. Moves like this makes me feel that my decision to nuke all my windows installtions was the right one.

    1. Richard 12 Silver badge

      "Joe Public" doesn't care

      He doesn't use cmd or powershell and never will.

      Sheila Sysadmin is already using Powershell for the things it's good at, and cmd.exe for the rest.

      Debbie developer relies on a large number of cmd.exe batch files and will be sorely vexed if any of them stop working!

      All Windows software devs rely on a few BAT files built up over many years to automate the boring bits of a build and release. In most cases they probably have no idea how they work as they were eithwr written by a predecessor, or so long ago that the author doesn't remember anyway.

      Plus there are the batch files that come with Visual Studio of course.

      If any of those break in any way, there will be hell to pay - as that's rather likely to end up breaking Production.

      1. RS232 4 Eva

        Re: "Joe Public" doesn't care

        cmd.exe will still be there in the background, you'll still be able to run the batch files using cmd.exe from PowerShell. If there's one thing that Microsoft is known for it's putting backwards compatibility above (almost) everything else.

    2. Trixr

      Re: Well Done Microsoft

      WIN+R > "cmd"?

      That's the way I've accessed the command prompt for nearly 20 years. That's not going to change.

      I mean, with all this screaming, you'd think that MS was doing away with it altogether, which is patently not the case. They're rejigging a couple of shortcuts, FFS.

  14. Forget It
    Go

    ConEmu is your friend

    https://conemu.github.io

  15. Uberseehandel
    WTF?

    MICROSOFT IS OUT OF CONTROL

    The culture at MS has changed. As a result the entire organisation is in a ferment of, largely faux, or trivial innovation (does the planet need yet another chat program). Nobody is on top of what is going on. And the side effects can be alarming.

    For example -

    Carrying out what looks like a normal Win 10 Pro 64-bit upgrade, and, on restarting, finding that the machine is locked out. It appears that when the new version was installed, the "Do not allow (local) accounts without passwords" box was selected by default. Well the machine is in a secure place and never leaves it. It uses a password to access all remote accounts. No particular need for it to have a password, it is physically secure. The only cure for this was to install a new OS version that revealed the short comings in the remote back-up and sync strategy that is in place.

    Exchange on-line server - implementing this required a comparatively high level MS tech/engineer logging onto my local machine and carrying out actions he was unable or unwilling to explain. Certainly, I have been unable to find adequate documentation on this matter. Since the incident requiring a fresh OS install, my email system (Exchange/Outlook) does not function correctly - like many people, I have a Business email address and a private email address, different domains, I can no longer send mail from my secondary private email address. Microsoft support has no answer to this problem.

    The third example of how out of control MS is, and how absolutely useless their off-shored support teams are, involves access to MS mail accounts (outlook.com and live.co.uk). Office365 / Azure AD have decided that the two mail accounts no longer exist and therefore I can no longer log into them. (They do exist because they are still forwarding new emails to the exchange mail account). I have twice tried to get MS Support to solve this problem. Support appears to not understand what happens, they repeatedly ask the same questions, which I reply to, including screen shots, where required. But Support mindlessly responds by re-asking questions I have previously answered. They are out of their depth and requests the they refer the problem elsewhere are ignored. This is unfortunate, whilst I cannot access the mail accounts, I cannot access the OneDrive account associated with those private email accounts.

    Documentation available on-line is confused, out of date or missing. The same goes for the various hard copy/electronic books, and MS Virtual Academy is woefully out of date.

    The culture of shovelling inchoate software out the door will come back to haunt Microsoft.

    And it is not just software that is stuffed. I have problems with some new expensive hardware - couldn't find an adequate support channel, so wrote a view setting out my problems - received an email saying my post did not fit with MS policy and had accordingly been deleted.

    MS repeatedly tries to dodge, and deny the exist of problems.

    I do hope somebody in MS with a detectable pulse reads this.

    1. bombastic bob Silver badge
      Trollface

      Re: MICROSOFT IS OUT OF CONTROL

      "I do hope somebody in MS with a detectable pulse reads this."

      doubtful. they're all over on answers.microsoft stroking one another's egos and shilling about how great Microshaft and their products are, banning anyone who dissents (or ganging up against them, like bunch of howler monkeys ). Their rose-colored glasses wouldn't allow them to be able to see anything on El Reg anyway.

      And I doubt they'd care. They're Micro-shaft. They're *POWERFUL*. They can DICTATE THE TERMS, and FORCE COMPLIANCE. Why SHOULD they care?

      1. Anonymous Coward
        Anonymous Coward

        Re: MICROSOFT IS OUT OF CONTROL

        But what happens when someone with some influence summons the lawyers?

      2. itzman
        Windows

        Re: MICROSOFT IS OUT OF CONTROL

        And I doubt they'd care. They're Micro-shaft. They're *POWERFUL*. They can DICTATE THE TERMS, and FORCE COMPLIANCE. Why SHOULD they care?

        Well...Brexit. Donald Trump.

        In some sort of weird 'life Imitates Art' the Users are fighting back against the MCP.

        Actually, I suspect that what has happened is that some psychological threshold has been passed, and now >50% of people who think at all, have decided that they distrust being told what to think by people who are clearly much more privileged than they are.

        M$ mistake is to think that just because once they were the only game in town, means that they still are.We bought MS because it had stuff we wanted. We carried on buying it, because we had no choice, even when it had optional stuff we didn't want. Now we resent paying for it because it is imposing stuff we really don't want on us.

        1. Orv Silver badge

          Re: MICROSOFT IS OUT OF CONTROL

          "...now >50% of people who think at all, have decided that they distrust being told what to think by people who are clearly much more privileged than they are."

          There may be evidence for that, but it sure didn't show up in the election like you're implying. Trump is plenty privileged, for one...and he got under 50% of the vote. He didn't even get more votes than his opponent. In most respects he ran on a platform of the privileged defending themselves against minorities.

      3. lurker 82

        Re: MICROSOFT IS OUT OF CONTROL

        Reminds me of the "See figure one" Usenet post about AT&T back in the days (1986).

        http://www.dourish.com/goodies/see-figure-1.html

  16. Christian Berger

    Problem of interfaces

    Programming interfaces on DOS/Windows have always been one of the biggest problems. That's why it's not uncommon for Windows software to control each other by emulating keypresses... either directly by sending keyboard events, or by using the slightly cleaner OLE automation.

    And yes, there's probably lots of software using batch files, as such scripts are an efficient way of dealing with files (i.e. renaming them) as well as handling configuration (just edit the script). Since most of the Windows software in use today comes from the 1990s, often with the company producing it being out of business for a decade, there is no chance of those getting rewritten for PowerShell.

    It's just that the ecosystem around Windows doesn't work in a way that allows chance. Software is written by companies, who do not even release the source code. Those companies can disappear or loose their interest.Often they had to work around bugs, as for quite some years, Microsoft didn't release updates. Now if Microsoft fixes those bugs, they still need to maintain bug to bug compatibility with those old programs. This wouldn't be much of a problem, if interfaces were simple. A couple of syscalls could easily be implemented differently, that's how the unixoid operating systems manage to achieve binary compatibility. You can run Linux binaries on your *BSD computer to quite some extend. Microsoft's interfaces, however, are hugely complex. Instead of having simple overarching concepts like "character devices", every feature needs its own set of function calls, functions calls which need to expose a stable API. It's a nightmare to change anything there without breaking lots of legacy software.

    1. Nick Ryan Silver badge

      Re: Problem of interfaces

      What's most annoying about the interface problem is that the problem was "solved", to a certain degree, many years ago: REXX. All an applicated needed to do was to expose a REXX port and it could be remote controlled.

      While it's possible to create your own PowerShell extensions, these are a bastard to deploy easily and require that your application is cobbled together in .net - which for lean or efficient applications is just not possible.

    2. patrickstar

      Re: Problem of interfaces

      Ehm. You can run Linux binaries on your Windows computer to some extent. Or Windows binaries on your Linux computer for that matter.

      You have hugely complex interfaces on Linux and *BSD also - just peek at ioctl and gasp at the madness it leads to. Admittely, Windows has a DeviceIoControl call that does the same thing, so it's not without blame either...

      And there are benefits to the MS way of doing things - as an example, for ages Linux didn't have a standardized sane way to play sound, while you can fire up a Win95 application and have it play sound just like if it was written yesterday, with mixing and all.

      You shouldn't compare the (complex) Win32 API to the Linux kernel syscall interface. It's more like glibc, Xlib, an X toolkit, dbus (or ToolTalk for you greybeards), and more. Actual number of syscalls is comparable (atleast if you don't count Win32k).

      Not saying that one approach is better than the other, rather that neither is perfect...

  17. Terje
    WTF?

    I just gave up

    My experience of Powershell is very limited, there is something improved hidden way down there somewhere, but why on earth does basic tasks have to be so obnoxiously hard to do?

    My most recent struggles with it was trying to create a script to replace an old .bat file that just refused to work due to codepage issues (trying to get it to work with Swedish characters in a network path).

    Issue 1; getting the beep thing to run scripts at all...

    Issue 2: getting it to simply run a program on a network drive with specified (static) parameters.

    After solving issue one which in no way shape or form should be an issue, and some tries at 2 I just gave up and realized it would take even more time then I had already spent on it (way more the a dirt simple task should ever take) and wrote a small C# program to just run the bloody thing, took me about ten minutes total and that is with some extra bells and whistles.

    Would it be to much to ask that simple tasks like that should be extremely simple and intuitive to do?

    1. RS232 4 Eva

      Re: I just gave up

      If there's one thing we should all have learnt from VBScript is that allowing users to run any old script by default is dangerous and not to be encouraged. At least PowerShell does try and keep people safe. Surely this should be encouraged?

      1. Kiwi
        Linux

        Re: I just gave up

        If there's one thing we should all have learnt from VBScript is that allowing users to run any old script by default is dangerous and not to be encouraged. At least PowerShell does try and keep people safe. Surely this should be encouraged?

        My old car keeps people safe as well. It was completely fucking useless and wound up on the junk heap. Which is where Windows should be.

        The point of a shell, especially one with "power" in it's name, and one that is set to replace cmd, is to let people write and run simple tools to automate simple jobs. Making it so hard that someone ends up writing a C# program to do it means the PS completely misses the point. Like most MS shills do.

    2. Howard Hanek
      Happy

      Re: I just gave up

      I've had extensive experience as a sysadmin on various OSs each having its own scripting language and syntax and I agree totally with your observation that efficiency dictates you throw the book away and substitute your own.

    3. Anonymous Coward
      Anonymous Coward

      Re: I just gave up

      "Would it be to much to ask that simple tasks like that should be extremely simple and intuitive to do?"

      Hmm, simple and intuitive ... "programs that do one thing and do it well.", something like that?

  18. Doctor Syntax Silver badge
    Coat

    Channelling the Windows shills: why should the ordinary user be subjected to an OS that has a command line interface? Surely everything should be clickable?

    Mine's the one with the New Wave manual in the pocket.

  19. Len Goddard

    Missing function

    Although not commonly used Windows does have symlinks which, to anyone used it 'ix OSs, are an almost essential feature. The windows mklink command is over-complex but does, for the most part, work ... from cmd.exe. Unfortunately it is not accessible from power shell. There are workarounds of various degrees of complexity and nastiness but nothing as easy as the simple command line mklink.

    1. RS232 4 Eva

      Re: Missing function

      new-item -Path C:\LinkDir -ItemType SymbolicLink -Value E:\RealDir

      (runs on Windows 10 with Powershell 5 in Admin mode)

      1. Down not across

        Re: Missing function

        new-item -Path C:\LinkDir -ItemType SymbolicLink -Value E:\RealDir

        How is that better than a simple mklink /D C:\LinkDir E:\RealDir ?

        At least the mklink syntax is logical and fairly close to how ln works (even if the parameters are the wrong way around...)

        1. RS232 4 Eva

          Re: Missing function

          The benefit of the PowerShell way is that once you know how to use New-Item you know how to create new Symbolic Links, new Files, new Folders, new Registry Keys, etc.

      2. smilr
        WTF?

        Re: Missing function

        That is simultaneously both the most beautiful and horrifying command line invocation I could imagine for such a task.

        WTF.

  20. Anonymous Coward
    Facepalm

    I was told at work to learn to "embrace disruption"

    And I feel Microsoft is right there beside me, proving more disruption than I can ever hope to get my arms around.

    1. Doctor Syntax Silver badge

      Re: I was told at work to learn to "embrace disruption"

      The sort of garbage that drove me out of employment into freelance a couple of decades ago.

  21. Howard Hanek
    Headmaster

    Port All Those Scripts to Esperanto

    If you're going to using a 'constructed' language.......

  22. jongalloway

    62 comments, and not one person (including the author) has actually tried it

    It's just amazing that nobody here has actually bothered to install the update and verify any of this.

    Start / Run / "cmd" -> still launches cmd.exe

    WinKey / "cmd" -> still launches cmd.exe

    .bat files and .cmd files -> still are executed by cmd.exe

    Literally all that changed was some right-click menu options, and you can change the win-x menu back if it bothers you.

    1. jongalloway

      Re: 62 comments, and not one person (including the author) has actually tried it

      And the official post on it: https://blogs.msdn.microsoft.com/commandline/2017/01/04/rumors-of-cmds-death-have-been-greatly-exaggerated/

      1. diodesign (Written by Reg staff) Silver badge

        Re: jongalloway

        You can put the pitchfork down - it's super clear in the article what's happened. And from Microsoft's own people, quoted high up in the piece:

        "In an effort to bring the best command line experiences to the forefront for all power users, PowerShell is now the de facto command shell from File Explorer.

        "It replaces Command Prompt (aka 'cmd.exe') in the WIN + X menu, in File Explorer's File menu, and in the context menu that appears when you shift-right-click the whitespace in File Explorer."

        Don't forget, Microsoft is a huge company. It's a classic case of someone announcing one change and then another part of the business yelling "WTF? NO!"

        C.

  23. JLV
    Thumb Down

    hubris

    What's with dumb-ass things like you type cmd.exe and you get powershell.exe?

    Why is it that you can't simply get what you asked for?

    And how is the conjunction of restricted script execution (the default ps behavior) going to play out on sites that have locked down user rights extensively? Will that mean that you simply won't have a personal automation/scripting capability?

    It's not like I am overly fond of cmd.exe, but it works and doesn't require much of a brain to use. Powershell may be quite powerful, but it also seems to come with a lot of MS design opinions, not all of which I care to partake of. I had planned to learn it little by little, but on my terms. My $.02 is that ps may make the complicated possible, but also certainly makes the simple complicated.

    But, I forget, of course it's not my computer, it's MS's.

  24. Jason Bloomberg Silver badge

    Waiting for the proverbial to hit the fan

    As long as those apps which are using 'execute( "cmd", "/c" ... )' and the like keep working exactly as they used to I'll be happy.

    I guess we'll find out.

  25. Karlis 1

    "whether PowerShell should be seen as part of Microsoft's outreach to Linux customers"

    Is this the kind of outreatch that involves gloves and vaseline? My buttocks clenched from just reading this line...

  26. Pirate Dave Silver badge
    Pirate

    Does this mean

    that MS is going to ease-up on the silly security requirements that Powershell currently has? I've had dozens of use cases in the past 5+ years where Powershell could have done something far easier than a batch file could, but the thought of "waking up" Powershell on 500+ computers, and getting the execution policy set, and jumping through all the other hoops to get Powershell to run PS1 files from our fileserver, well, that was daunting, and time is money, so I just bunged together batch files to do it. CMD doesn't need so much hand feeding to get things working, which is both good and bad. Maybe there's a way to make Powershell behave in a useful way using GPOs, I can't say I've looked into that to a large extent.

    As to having CMD launch Powershell instead of command.com, I wonder if MS goes down this dark path, if they will let us overwrite the CMD.EXE with older versions that DO run command.com by default. Or even just rename CMD.EXE to BADCMD.EXE and create a CMD.BAT that launches command.com. I never type the EXE extension in the Run box anyhow...

    It is somewhat worrisome that MS is still ratting around with these old ways of doing things and changing what we've all grown deeply accustomed to. I would think 99% of normal users never use CMD anyhow, unless they're following a How-To, and if they DID need PowerShell, how much harder is it to type "powershell" at the command prompt and hit Enter? So is MS futzing around with this to "help" the average user, or are they trying to (slowly, gradually) force us old-timers away from the last remnants of DOS so they can eventually get rid of it altogether?

    1. Pascal Monett Silver badge

      It does seem a bit schizophrenic

      On the one hand, MS implements a PlaySkool interface despite howls of innumerable Windows users content with what they had, and on the other it replaces a simple command-line tool with a much more powerful scripting environment.

      Personally, I can't wait to hear what new vulnerabilities will spring from this new fountain that is being laid at the feet of malware developers. Their fav OS is not changing any time soon.

  27. Ocular Sinister

    Nah, its ConEmu + Git Bash for me - closest I can get to sane shell on the Windows laptop imposed on me by management.

  28. Charles 9

    "It's just amazing that nobody here has actually bothered to install the update and verify any of this."

    Ever thought it's because they haven't made the move YET, but PLAN to?

    PS. To El Reg, I attempted to reply directly to the comment above featuring the quote, but it reports 410 Gone although the comment is still listed.

  29. Anonymous Coward
    Anonymous Coward

    Just need a desktop context menu item

    So I can right click on my desktop to get a shell just like I do on Linux. Oh wait, that was removed from Gnome awhile ago! Seriously, PowerShell is a huge improvement over what we had at the dawn of time (former DR-DOS distributor here). While its commands may look a bit too... object oriented for Korn and Bash purists, PowerShell actually follows the Unix philosophy in a way: a separate method for each kind of operation. Oh wait. Systemd. Anyway, PowerShell is what makes it possible for admins of Windows Server since 2012 to control their systems entirely from the command line. Hey, Unix guy! Did you know that by default Windows Server 2012 doesn't install a gui? In fact the default setup only installs the bare minimum of services. Sort of like the Minimal Install of RHEL 7. As someone who originally certified on NT 3.51 and only recently got involved with Windows again after 15 years of Solaris and Linux, the biggest change I've found is in the attitude of many Windows admins: they *finally* get automation and how it can save both their time and their sanity. Now I just have to convince them to use some kind of source control system to preserve their configurations...

  30. itzman
    Linux

    Continuing on a theme of...

    ..multiple solutions I dont need to problems I dont have...

    ...Surely anyone smart enough to actually use a command line has moved from the dark side already?

  31. Lodgie

    A strange thing to do. If anyone needs Powershell we all know where to find it and what on earth is an average user going to do with it? CMD is quick and dirty and of course familiar. MS should leave as is, a pointless change.

    1. RS232 4 Eva

      I think the point is to make PowerShell familiar. Ironically, a lot of people only know of PowerShell's existence from using it to uninstall pre-installed UWP apps.

  32. tiggity Silver badge

    Ho hum

    I use a mixture of .bat and .ps for various tasks, horses for courses approach.

    For most stuff cmd.exe does the job just fine.

    Poweshell only for stuff that is not easy / possible from cmd.exe, as powershell wins prizes for unintuitive command syntax (as well as making a sloth look speedy & being a PITA for permissions)

    I'm sure that's how things will stay, using the appropriate tool for the job.

  33. TheBBG

    Precious. Powershell's Update-help had an error and failed to do anything, everything, or something. The outcome of what it did or did not do was not clear. Microsoft at its finest.

  34. Ronald23

    If you are looking for the easy way to batch Rename Files folders by the thousands? "KrojamSoft: BatchRenameFiles Tool". is probably the easiest batch file renamer you'll find to instantly rename multiple files.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like