Jump to content

User:AHollender (WMF)/sandbox

From Wikimania
Shell Usual environment Usually invoked Introduced Platform-independent Default login shell in Default script shell in License Source code availability User interface Mouse support Unicode support ISO 8601 support Console redirection Stream redirection Configurability Startup/shutdown scripts Batch scripts Logging available as statically linked, independent single file executable
Thompson shell UNIX sh 1971 Template:N/A UNIX UNIX Template:N/A Template:Yes Text-based CLI Template:No Template:No Template:N/A Template:Yes Template:N/A Template:N/A Template:N/A Template:N/A Template:N/A Template:N/A
Bourne shell 1977 version 7th Ed. UNIX sh 1977 Template:Yes 7th Ed. UNIX 7th Ed. UNIX, Template:Proprietary Template:Yes Text-based CLI Template:No Template:No Template:N/A Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:No Template:Yes
Bourne shell current version Various UNIX sh 1977 Template:Yes SunOS-5.x, FreeBSD (non-root user)[1] SunOS-5.x Template:Free Template:Yes Text-based CLI Template:No Template:Yes[nb 1]Template:Better source Template:N/A Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes[nb 2] Template:Yes
POSIX shell[2] POSIX sh 1992[3] Template:N/A Template:N/A POSIX Template:N/A Template:N/A Text-based CLI Template:No Template:Yes Template:N/A Template:Yes Template:Yes Template:Yes Unspecified (.profile given as an example) Template:Yes Template:Yes Template:N/A
bash (v4) POSIX bash, sh 1989[4] Template:Yes GNU, Linux (default for root), macOS 10.3–10.14 GNU, Linux, Haiku, macOS 10.3–10.14 Template:Free Template:Yes Text-based CLI Template:No Template:Yes[5]Template:Better source Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
csh POSIX csh 1978 Template:Yes SunOS Template:Dunno Template:Free Template:Yes Text-based CLI Template:No Template:No Template:Dunno Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
tcsh POSIX tcsh, csh 1983[6] Template:Yes FreeBSD (default for root), formerly Mac OS X Template:Dunno Template:Free Template:Yes Text-based CLI Template:No Template:Yes Template:Dunno Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
Hamilton C shell Win32, OS/2 csh 1988[7] Template:Yes (OS/2 version no longer maintained) Template:Optional Template:Optional Template:Proprietary Template:No Text-based CLI Template:No Template:No Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
Scsh POSIX scsh 1994 Template:Yes Template:Dunno Template:Dunno Template:Free Template:Yes Template:Dunno Template:Dunno Template:Dunno Template:Dunno Template:Dunno Template:Yes Template:Dunno Template:Dunno Template:Dunno Template:Dunno Template:Yes
ksh (ksh93t+) POSIX ksh 1983[8][9] Template:Yes AIX, HP-UX OpenSolaris Template:Free Template:Yes Text-based CLI Template:No Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
pdksh POSIX ksh, sh 1989? Template:Yes OpenBSD[10] OpenBSD[10] Template:Free Template:Yes Text-based CLI Template:No Template:No Template:N/A Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
zsh POSIX zsh 1990 Template:Yes Deepin, GoboLinux, Grml, macOS 10.15+ Grml, macOS 10.15+ Template:Free Template:Yes Text-based CLI Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
ash POSIX sh 1989 Template:Yes Minix, BusyBox based systems NetBSD, Minix, BusyBox based systems Template:Free Template:Yes Text-based CLI Template:No Template:Partial (for BusyBox, supported in command-line editing, but not in string handling[11]) Template:N/A Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes
CCP CP/M, MP/M (CCP) 1976 (1974) Template:No CP/M (no login), MP/M CP/M, MP/M Template:Proprietary Template:Yes (originally closed-source) Text-based CLI Template:No Template:No Template:No Template:No Template:No Template:No Template:Yes (automatic via $$$.SUB) Template:Partial (only via external SUBMIT command to update $$$.SUB) Template:No Template:Yes
COMMAND.COM DOS COMMAND 1980 Template:No (3rd party implementations, not bound to a specific DOS vendor or version, available) DOS, Windows 95, 98, SE, ME DOS, Windows 95, 98, SE, ME vendor specific, f.e. MS-EULA,[nb 3] or BSD/GPL (free clones) Template:No (except for OpenDOS, DR-DOS, PTS/DOS and FreeDOS) Text-based CLI Template:No Template:No Template:No (except for DR-DOS) Template:Yes (via COMMAND con: or CTTY con:) Template:Yes Template:Yes (via startup parameters and environment variables, DR-DOS also supports DIR /C /R user-default switch command) Template:Yes (automatic \AUTOEXEC.BAT for primary shell, or explicitly via /P, /P:filename.bat or /K startup options) Template:Yes (via CALL command or /C and /K startup options) Template:No Template:Yes
OS/2 CMD.EXE OS/2 CMD 1987 Template:No OS/2 OS/2 Template:Proprietary[nb 4] Template:No Text-based CLI Template:No Template:No Template:No Template:No Template:Yes Template:Dunno Template:Partial (only via /K startup option) Template:Yes (via CALL command or /C and /K startup options) Template:No Template:Yes
Windows CMD.EXE[nb 5] Win32 CMD 1993 Template:No Windows NT, 2000, XP, Server 2003, Vista Windows NT, 2000, XP, Server 2003, Vista Template:Proprietary[nb 6] Template:No Text-based CLI Template:No Template:Partial (CHCP 65001 for UTF-8, but program arguments are still encoded in local codepage) Template:No Template:No Template:Yes Template:Yes (via registry, startup parameters, and environment variables) Template:Yes (automatic via registry, or explicitly via /K startup option) Template:Yes (via CALL command or /C and /K startup options) Template:No Template:Yes
4DOS, NDOS DOS, Windows 95, 98, SE, ME 4DOS, NDOS 1989 (1986) Template:No Template:Optional Template:Optional Template:Free Template:Yes Text-based CLI with TUI extensions Template:Yes (popups, help system, %_MOUSE internal variable, INKEY /M command) Template:No Template:Yes Template:Yes (via CTTY con:, except for DRAWBOX, DRAWLINE, DRAWVLINE, LIST, SCREEN, SCRPUT, SELECT, VSCRPUT commands and file / directory coloring) Template:Yes Template:Yes (via 4DOS.INI/NDOS.INI file, startup parameters, environment variables, SETDOS command) Template:Yes (automatic \AUTOEXEC.BAT for primary shell and 4START.BTM/4START.BAT as well as 4EXIT.BTM/4EXIT.BAT for any shell, or explicitly via /P, /P:dir\filename.ext or /K startup options) Template:Yes (via CALL command or /C and /K startup options) Template:Yes Template:Yes
4OS2 OS/2 4OS2 1992 Template:No Template:Optional Template:Optional Template:Proprietary Template:Yes Text-based CLI Template:No Template:No Template:No Template:No Template:Yes Template:Yes (via 4OS2.INI file, startup parameters, environment variables, SETDOS command) Template:Yes (automatic via 4START.CMD/4START.BTM as well as 4EXIT.CMD/4EXIT.BTM files, or explicitly via /K startup.cmd option) Template:Yes (via CALL command or /C and /K startup options) Template:Yes Template:Dunno
TCC (formerly 4NT) Win32 TCC 1993 Template:No optional optional Template:Proprietary Template:No Text-based CLI (Take Command: GUI) Template:Yes (console mouse, popups, help system, %_XMOUSE, %_YMOUSE internal variables, INKEY /M command) Template:Yes Template:Yes Template:No Template:Yes Template:Yes (via registry, TCMD.INI/4NT.INI file, startup parameters, environment variables, SETDOS command) Template:Yes (automatic via registry and TCSTART/4START as well as TCEXIT/4EXIT, or explicitly via /K startup option) Template:Yes (via CALL command or /C and /K startup options) Template:Yes Template:No
VMS DCL[12] OpenVMS Automatically for login/interactive process 1977? Template:Yes VMS VMS Proprietary, bundled in VMS Template:No Text-based CLI Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:No
PowerShell .NET PowerShell 2006 Template:Yes Windows 10, 8, Server 2008, 7, Vista, XP[nb 7] Windows 10, 8, Server 2008, 7 Template:Free Template:Yes Graphical CLI Template:Yes Template:Yes Template:Yes Template:No Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:No
rc Plan 9, POSIX rc 1989 Template:Yes Plan 9, Version 10 Unix Plan 9, Version 10 Unix Template:Free Template:Dunno Template:Dunno Template:Dunno Template:Yes Template:Dunno Template:Dunno Template:Yes Template:Dunno Template:Dunno Template:Dunno Template:Dunno Template:Yes
BeanShell Java Template:Dunno 2005 Template:Yes Template:Dunno Template:Dunno Template:Free Template:Dunno Template:Dunno Template:Dunno Template:Yes Template:Dunno Template:Dunno Template:Yes Template:Dunno Template:Dunno Template:Dunno Template:Dunno Template:No
fish POSIX fish 2005[13] Template:Yes GhostBSD Template:Dunno Template:Free Template:Yes Text-based CLI Template:Dunno Template:Yes Template:Dunno Template:Dunno Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Dunno
Ion Redox, Linux ion 2015[14] Template:Yes Redox Redox Template:Free Template:Yes Text-based CLI Template:Dunno Template:Yes Template:Yes Template:Dunno Template:Yes Template:Yes Template:Yes Template:Yes Template:Yes Template:Partial (not distributed as a standalone executable, but it can be built as one)
Shell Usual environment Usually invoked Introduced Platform-independent Default login shell in Default script shell in License Source code availability User interface Mouse support Unicode support ISO 8601 support Console redirection Stream redirection Configurability Startup/shutdown scripts Batch scripts Logging available as statically linked, independent single file executable


  1. Template:Citation
  2. Template:Cite book
  3. As part of IEEE Std.1003.2-1992 (POSIX.2); integrated into IEEE Std.1003.1 with the 2001 revision.
  4. Template:Cite newsgroup
  5. Template:Citation, "Bash now supports the \u and \U Unicode escape."
  6. Template:Cite newsgroup
  7. Template:Cite journal
  8. Template:Cite newsgroup
  9. Template:Cite newsgroup
  10. 10.0 10.1 Default shell in OpenBSD is ksh (pdksh).
  11. Template:Cite web
  12. Template:Cite web
  13. Template:Cite web
  14. Template:Cite web


Cite error: <ref> tags exist for a group named "nb", but no corresponding <references group="nb"/> tag was found