Free Command Line Shells
Interactive shells to speed up your programming and administrative tasks
Free Command Line Shells
The free interactive command line shells listed on this page feature a wide plethora of facilities that allow you to write complex shell scripts, easily use the interactive command line interface to navigate your file system or the history of commands that you have typed in the past, edit your command line, use aliases and functions, get the shell to complete filenames and directory names for you by simply hitting the TAB key, and so on. They are usually indispensable if you have to perform system admistrative tasks or programming work, since it allows you to work faster than using a graphical user interface, even if you're using one of the more sophisticated free file managers.
Free Interactive Command Line Shells
- Console (Windows)
Console is, strictly speaking, not actually a command line shell but a sort of wrapper around other shells. It allows you to run multiple instances of those shells (such as the Windows command prompt, or Powershell, etc) in multiple tabs. You can also select text by line (the way you do in a text editor) instead of by column in the usual command prompt. I think it operates by running your actual shell in the background, then taking its output and redisplaying it in Console's own tabbed window. This program is open source and licensed under the GNU General Public License.
- Windows PowerShell (Windows)
Microsoft's Windows PowerShell is a command line shell for Windows XP, Server, Vista (and presumably later versions of their operating system) designed to let IT administrators control and automate a variety of system administrative tasks. It has a scripting language that is "specifically designed for IT administration" (from the FAQ). It requires you to have the .NET Framework 2.0 installed.
- 4DOS (Revived) (DOS, Windows 9x/ME)
JP Software's 4DOS, which was released as open source by its developers after they stopped maintaining it, is a well-known command line shell for MS-DOS and clones as well as Windows 9x/ME. The mantle of development has been taken up by a third party developer who has released numerous new versions with fixes for existing bugs and added new features. Like its modern Windows cousin Take Command (see the Light Edition listed elsewhere on this page), it features a whole plethora of additional commands, sophisticated scripting facilities, variables, control structures, aliases, directory stacks, in addition to an excellent command line editor that supports history, filename and directory completion, file viewer, etc.
- BASH - Bourne Again Shell (Linux, BSD, Windows, Mac OS X, etc)
Bash is probably the default shell for most Linux distributions, and is also preinstalled in other Unix-type systems like FreeBSD, OpenBSD, etc. It supports history, command line editing, aliases, job control, shell functions, etc. Note that the link above leads to the source code. Binaries for bash are probably already on your system if you use Linux or a Unix-type system. If you use Windows, see the entry for MSYS or Cygwin elsewhere on this page.
- Tcsh: Enhanced C Shell (Linux, BSD, etc)
This shell, tcsh, is an enhanced version of the Berkeley C shell (csh). Like its predecessor, it features command line editing, aliases, history, filename completion, job control, a C like syntax, etc. The site links to the source code. If you want binaries, you can probably either already find the shell on your system (if you use Linux or one of the BSDs), or just use your distribution's facility to get it from its download repositories.
- MSYS (Windows)
MSYS is basically a packaging of numerous Unix-type command line tools, including the shell itself (the bash shell), for Windows systems. The package was essentially designed for developers who want to use Unix tools or who want to compile programs from Unix sources on Windows. For more details about the bash shell, see the entry for BASH on this page.
- Cygwin (Windows)
Cygwin is a complete environment for Windows that mimics (to some extent) a Linux-like system. It comes with the BASH shell, a plethora of tools (including compilers, debuggers, etc) and libraries that allow you to write and compile Linux-based programs on Windows. Programs compiled and linked using the Cygwin toolchain can be run on Windows.
- Korn Shell (ksh) (Linux, BSD, etc)
The korn shell, is an interactive command line shell that has the functionality of many scripting languages, such as Perl, awk, REXX, tcl and icon. It is designed primarily for Unix-based systems, although it can also be compiled for Windows with the help of Cygwin.
- pdksh: Public Domain Korn Shell (Linux, BSD, OS/2, etc)
The Public Domain Korn Shell, or pdksh, implements most of the Korn shell's features as well as some additional facilities. The site mentions that its vi editing mode is better than that of the korn shell.
- Zsh: Z Shell
Zsh incorporates many of the facilities found in bash, ksh and tcsh (see the other entries on this page). It includes facilities like shell functions, directory stacks, command line editing, aliases, history, spelling correction, etc.
Can't Find What You're Looking For?
Search the site using Google.
How to Link to This Page
It will appear on your page as: