I use PowerShell every day at work. I much prefer it to CMD and at one point I much liked the idea of piping live objects, but the more I use it, the more I don't think it makes sense. If I want to work with live objects, then I want to work with a proper programming language. In my shell, the file system is my object model. I want to work with the bytes in those files.