Now, Terminal emulator packages allow us to input commands to shell and it reflects the output by the shell. In simple words, the shell is a program that is responsible for the execution of an instruction and returning the output while the terminal is responsible to send instructions to the shell by taking input from the user and displaying the. Terminus is an alternative to Windows' standard terminal (conhost), PowerShell ISE, PuTTY or iTerm Terminus is not a new shell or a MinGW or Cygwin replacement. Neither is it lightweight - if RAM usage is of importance, consider Conemu or Alacritty. Terminus offers you a list of shells. With the normal terminal, you can change your default shell but Terminus simplifies you this process and helps you to easily modify this information at any time. The list of shells on the screenshot above concerns Terminus on Centos 7. A terminal for a more modern age. DOWNLOAD GITHUB.
Station shell jemmel. 916 likes 2 talking about this. 5020 jemmel centre ville.
I see a lot of questions that are close but the questions themselves show an underlying misunderstanding of some important terms.
- Why would I use Windows Terminal over PowerShell?
- I don't need WSL for bash, I use Cygwin.
- Can I use conemu with PowerShell Core or do I need to use Windows Terminal?
Let's start with a glossary and clarify some words first.
The word Terminal comes from terminate, indicating that it's the terminating end or 'terminal' end of a communications process. You'll often hear 'dumb terminal' when referring to a text-based environment where the computer you are sitting next to is just taking input and showing text while the real work happens at the other end in a mainframe or large computer.
Terminus Custom Shell
TTY or 'teletypewriter' was the first kind of terminal. Rather than a screen you'd have a literal typewriter in front of you. When you type on it, you're seeing the text on a piece of paper AND inputing that text into a computer. When that computer replies, you'll see the typewriter automatically type on the same paper.
When we refer to a Terminal in the software sense, we're referring to a literal software version of a TTY or Terminal. The Windows Terminal is that. It's really good at displaying textual output. It can take input and pass it on. But the Terminal isn't smart. It doesn't actually process your input, it doesn't look at your files or think.
Folks in the mid 20th century would have a piece of furniture in their living room called a console or console cabinet. A Console in the context of computers is a console or cabinet with a screen and keyboard combined inside it. But, it's effectively a Terminal. Technically the Console is the device and the Terminal is now the software program inside the Console.
In the software world a Terminal and a Console are, for all intents, synonymous. Xfinity hbo max app.
A shell is the program that the terminal sends user input to. The shell generates output and passes it back to the terminal for display. Here's some examples of Shells:
- bash, fish, zsh, ksh, sh, tsch
- PowerShell, pwsh
- cmd, yori, 4dos, command.com
Terminus Shell Holder
Here's an important point that should make more sense now that you have these terminals - Your choice of shell doesn't and shouldn't dictate your choice of terminal application.
Aside: WSL and WSL2 (the Windows Subsystem for Linux) are a complete local Linux (or many Linuxes) that run on Windows 10. They are full and real. WSL2 ships a real Linux kernel and runs in on Windows. Cygwin is NOT a Linux. Cygwin is a large collection of GNU and Open Source tools which provide functionality similar to Linux on Windows - but it is not Linux. It's a simulacrum. It's GNU utils compiled against Win32. It's great, but it's important for you to know what the difference is. Cygwin may let you run your bash shell scripts but it will NOT run Apache, Docker, or other real ELF-binaries and Linux apps.
Your Choice of Windows Consoles?
There are a number of shells that ship with Windows. Here's a few I'm running now. Note the 'chrome' or the border and title around them? Those shells are all hosted by a the legacy Windows console you have never heard of called conhost.exe. You can go to the command prompt, type powershell, cmd, or ubuntu and any number of shells will run. Conhost does the work of input and output.
Now, forget that conhost exists, because it sucks - it's super old.
Pseudo Console, Pseudo Terminal, PTY, Pseudo TTY (ConPTY)
Pseudo Terminals are terminal emulators or software interfaces that emulate terminals. They pretend to be terminals like the ones above. *Nix systems have long had a pseudo-terminal (PTY) infrastructure and now Windows as a pseudoconsole (ConPTY) as well.
Window's new ConPTY interface is the future of consoles and terminals on Windows. If you choose a 3rd party (non-built-in) console applications for Windows, make sure it supports ConPTY and it'll be a better experience than some of the older consoles that use screen scraping or other hacks.
Terminus Terminal App
Back to your choice of Windows Consoles
Remembering there's a lot of shells you can use in Windows, there's a lot of 3rd party consoles you can use if you don't like conhost.exe (and you shouldn't).
- Babun (dead)
- 4NT/jpSoftware (not free)
- Windows Terminal (free in Microsoft Store)
- XTermjs - a Typescript component that lets you integrate terminals into your apps
- VSCode includes a Terminal
- Visual Studio 2019 Preview includes a Terminal
All of these Terminals support ALL the shells above and any shells I've missed. Because a shell isn't a terminal. Pick the one that makes you happy. I use PowerShell Core and Ubuntu in WSL2 in the Windows Terminal.
Hope this helps clear things up.
Sponsor: Suffering from a lack of clarity around software bugs? Give your customers the experience they deserve and expect with error monitoring from Raygun.com. Installs in minutes, try it today!
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.