3 ms·
I have very mixed feelings about this. On the one hand, the Command Prompt in Windows has always been something of a second-class citizen, a poor imitation of
by Silhouette 10y ago
I have very mixed feelings about this.
On the one hand, the Command Prompt in Windows has always been something of a second-class citizen, a poor imitation of the power user shells of the UNIX/Linux world. It was long overdue for an upgrade. PowerShell is, no doubt, more powerful, and for professional Windows sysadmins with the time and inclination to learn it, it's probably been the default for a long time.
On the other hand, there's a reason the traditional command prompt and batch files have lasted so long: for a lot of basic purposes, they work just fine, and many people know how to use them. Among those who aren't professional Windows sysadmins, I know very few people who seem to use Powershell at all, probably not helped by the fact that it has some of the worst documentation in computing history and is far from intuitive for anyone familiar with either the traditional Windows command prompt or something like bash.
I'm still not at all comfortable with the idea that with Windows 10 you'll essentially just wake up one morning and find something you've been using happily for literally decades isn't there any more and pressing the keyboard shortcut that got you want you wanted last night doesn't do so this morning. Regardless of whether this particular change can be turned off, at least for now, this still seems a very dangerous policy in general.
- WorldMaker 10y agoFirst of all, all that is happening is the default is swapping. You can still swap back if you really must. Also, PowerShell runs .bat batch files just fine, for those that were wondering. I don't think PowerShell has any worse documentation than bash: most commands support -? and/or -h just like they do everywhere else. Or there might be extra help for a command in Get-Help, which is very similar to unix man (and aliased to it if you have the have the habit to just man commandname). Don't know the command you want? Get-Command lists them and the you can Get-Help about it. Beyond that there's definitely a learning curve to get used to the common verbs and some subtle syntax differences to bash, but that's not much different from learning the differences between bash and zsh or csh or emacs... On this front I can point you to a lot worse documentation than PowerShell's in the deeper, weirder *nix command shells. Edit: Removed asterisk interpreted as emphasis.
- Silhouette 10y agoFirst of all, all that is happening is the default is swapping. You can still swap back if you really must. Sure, but that's not really my point. No-one who is seeing the default swap had much if any say over whether the option to swap back would be provided, nor will many if any of those people have any say over whether and when the alternative will be deemed too much trouble to maintain and removed entirely. I remember painfully well my first experience with Powershell, back when it was new. I thought I'd give it a try, so I opened a shell window and tried a few commands. What happened next went something like the following. I'm actually reproducing this as I type this post, following roughly the same process using Powershell as installed on my Windows PC today, just to make sure I'm not talking complete rubbish here and it really is as bad as I remember... dir OK, great, I still get a directory listing. I'm in my home directory and lots of the useful subdirectories are hidden by default. No problem: dir /a What, why is that an error? Oh, this isn't really dir as I know it, and / is now a path separator, reversing two decades of Windows using \ for that purpose. OK, maybe it's more like bash then? dir --help No, that's an error as well. OK, let's try something else: help If you've ever tried that in Powershell, you'll be aware that it produces one of the most unhelpful help pages ever written. Even a simple section about what to read to learn about Powershell is full of jargon that no-one who didn't already know Powershell would necessarily understand. What is a cmdlet? Is that like a batch file? Where did all this stuff about properties and methods on objects come from? I'm trying to get a directory listing, not write a GUI in Java! At least it finally tells me the magic syntax to get help on any given command: -? dir -? Wait, what? I asked about dir, and it's telling me something about Get-ChildItem. Except it's not really, because all it tells me is some syntax for something I didn't ask about, with no indication of why it's relevant or what any of the options (I'm assuming) actually do. But after a screenful of more jargon I don't understand, it says something about how to get more information, so let's try that. Oh, I still can't copy and paste like most UIs had since the 1990s. OK, back to typing out tedious commands full of variations on what I actually want to ask about the old-fashioned way: get-help Get-ChildItem -detailed Oh, look! Several screens of further jargon, which apparently still don't support paging like any decent CLI since the 1990s either! But at least it tells me that what I want is the -Force option. Maybe. Because even the brief description of that option manages to use jargon I don't know and refer me to yet more help pages. And why on earth would an option that is normally used to override confirmation prompts when doing something destructive apply to a dir command? Somewhere around this point, if memory serves, I stopped, presumably fearing that I would lose the will to live if I carried on much longer. But again, I wasn't particularly trying to make the point here that Powershell is a textbook example of how not to do UI design, though it is and I might have been. My real point was that taking a tool that has been useful for 20 years and replacing it literally overnight and without prompting with a radically different tool that is also demonstrably inferior in some ways is a really, really dumb idea.