Writing Your Own cmd / powershell on Windows: Where to Start?
Suppose I want to write my own implementation of cmd or powershell just for exercise. Where should I start? Searching for "command line interpreter" or "command line shell" returns nothing for me.

I'm thinking about writing a simple bash-like shell in C# just for learning purpose. But I can't find where to start, for things like how to pass argv and argc to program that's called and what really is the cmd (or terminal) window. Is the cmd or terminal window is just a modified textbox / textarea? Or should I make my own component?

Could someone point me to a book, tuturoail, or documentation for starting to write these things? Extra note, since it's C#, I just want it to run on Windows (I don't want to think about mono for now).

Thanks before.
Writing Your Own cmd / powershell on Windows: Where to Start?
===

Suppose I want to write my own implementation of cmd or powershell just for exercise. Where should I start? Searching for "command line interpreter" or "command line shell" returns nothing for me.

I'm thinking about writing a simple bash-like shell in C# just for learning purpose. But I can't find where to start, for things like how to pass argv and argc to program that's called and what really is the cmd (or terminal) window. Is the cmd or terminal window is just a modified textbox / textarea? Or should I make my own component?

Could someone point me to a book, tuturoail, or documentation for starting to write these things? Extra note, since it's C#, I just want it to run on Windows (I don't want to think about mono for now).

Thanks before.