This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.
- Doug McIlroy
It allows you to create utility scripts in C# which are pipeable.
A sample class which extends the functionality of ConsoleEngineBase demonstrating how to implement a simple utilty overriding just what you need.
This code is tweaked from the original I found on msdn. There were a couple of issues with shell interaction on windows for cat'ing empty files at this code, also for echoing data at it (line ending caused some confusion).