* pager: granted. I believe that if MS are seriously targeting UN*X sysadmins, then they should have these tools out of the box, especially if they want me to ship powershell scripts to my customers. But still – yes, being available for installation by a cumbersome process (set up a package manager, install a large framework, etc) is kind of solving that problem.

* history: when I last tried it, the Googleable KB to do it was way more complicated, and as a result your old history was (not really reliably) available from Get-History, but you couldn’t use the UP key to get to it.

* startup time: I was working on PS3. Recently tried PS 4 and it is marginally better, but > 1 sec startup time is not acceptable.

* NIC IP: nice, didn’t know that.

* completion: F7 shows a history list, it doesn’t list completions. For example, if I type “dir c:\P” then I want to press a key and to get a list of all directories that start with “P” under “C:\”, so I can choose one and continue to edit the command. Bash does this, Zsh does this very well (you actually get a menu to select from), Powershell does this horribly bad.

* Logic operations: you messed it up – “-eq” is supported by test, but only for integers. String comparison must use “=”, and it also works for numbers (at least when identity is the same as equality, which it is for integers).

* Single item lists: hmm – I didn’t realize that this is what its doing. Now it makes more sense.

* command line arguments: my gripe isn’t that you can turn it off, but that to get something useful done you have to go through a lot of hoops. I’m all for lots of power, I just want to not have to do the heavy lifting if I want just a bit of power – which the “$” syntax of UN*X shells allows me. And getting my users to remember to use obtuse syntax like “-%” is not an alternative.

* execution policy: It is not trivial to turn off. And let me explain what I mean by “trivial”: things that a non-programmer, possibly non-admin user, can figure out themselves how to do when you ship them a product based on Powershell scripts.

Regarding your summary – yes, Powershell is quite powerful, possibly more powerful than UN*X alternatives, but you pay for that power with huge complexity and the inability to use the shell as a product integration tool for customers. This is a price I’m not willing to pay.