> I have to essentially copy and paste fragments of things that work, it's so arcane.
I have about the same problem when it comes to bash. While bash may very well be described as "arcane" I believe this is mostly a problem of unwillingness to learn something new or different.
Understanding how PowerShell works takes a bit of time and re-thinking. It doesn't help that there's so much downright bad PowerShell code out there that was mindlessly converted from VBScript. Still, it's not that hard and the language is quite consistent and, well, powerful. They made quite a large effort to make sure that the underlying concepts are orthogonal and pervasive throughout. So learning just a few concepts actually make a very large part of the shell and language approachable and easy to understand.
Fair point. PowerShell is three things, actually: An embeddable scripting runtime, a scripting language, and a shell. The latter is (by name, probably) what people see it as, usually. Furthermore, most usage examples throughout the web use it for things that are traditionally done in a shell, e.g. interactive use, or small scripts that mainly do filesystem maintenance stuff.
You're right in that Python may be a more apt comparison, especially in that PowerShell's .NET foundation serves as the equivalent to Python's included libraries.
But that's a discussion that would have to happen every time people try to think of PowerShell as a weird bash. And it is a capable and useful shell, too. It just can do a lot of things much better than bash; they just look different.
I have about the same problem when it comes to bash. While bash may very well be described as "arcane" I believe this is mostly a problem of unwillingness to learn something new or different.
Understanding how PowerShell works takes a bit of time and re-thinking. It doesn't help that there's so much downright bad PowerShell code out there that was mindlessly converted from VBScript. Still, it's not that hard and the language is quite consistent and, well, powerful. They made quite a large effort to make sure that the underlying concepts are orthogonal and pervasive throughout. So learning just a few concepts actually make a very large part of the shell and language approachable and easy to understand.