Hacker News new | ask | show | jobs
by fluoridation 275 days ago
A shell is not a terminal emulator. It's a program that does text I/O (perhaps with a terminal, perhaps not) and implements basic system functionality like executing programs and often scripting.
1 comments

Most people interact with a shell through a terminal emulator, though. The alternative is something like emacs's eshell. Or an actual "terminal" which hasn't been even available for purchase for many decades.
Not always. The shell may be facing a serial interface, or it could be spawned by a program and have no user interface at all.
I probably wouldn't describe either as a human interacting with a shell, but nevertheless point taken.
I wouldn't either, which I why I didn't include that interaction in the definition I gave. A shell just implements basic system functionality, it doesn't necessarily function as a UI.