I would have thought Microsoft on is dotnet multi-platform journey would find a way to make PowerShell just POSIX compatible, supporting at least standard all day commands like `grep`, `wc`, `find` and others. All it would have taken is to create aliases or replacements for the top 50 shell commands.
Instead they re-invented the wheel. It's not a bad wheel, but the wheel is completely different than most people would expected to be and for POSIX enthusiast it just does not feel right.
With wsl or git bash you can do this but it feels slow and clunky most of the time.