I don't think you need object orientation for that. Haskell and Rust solve these problems also just fine, without any OOP in sight.
Hmm, not sure I understand. How are those shell based?
I agree that rust and haskell are not your typical OO (or not OO at all in a traditional sense) I guess my poorly worded claim was less focused on the OO nature of psh than on the typization (which both of these also do) - if you knew what type $rev and $path are, it's easier to distinguish intent, whether objects or not.
In this specific case, the oop nature of powershell doesn't actually matter, just the fact it uses structured input instead of raw string.
It's like passing a struct to a function instead of a badly serialized representation of a value