
Sample screenshot of the command line interpreter
Bash.
A 'command line interpreter' (also 'command line
shell', 'command language interpreter') is a
computer program that reads lines of text entered by a user and interprets them in the context of a given
operating system or
programming language.
Command interpreters as user interfaces
Command line interpreters allow users to issue various commands in a very efficient (and often terse) way. This requires the user to know the names of the commands and their parameters, and the syntax of the
language that is interpreted. From the
1960s onwards, user interaction with computers was primarily by means of
command line interfaces.
In the
1970s, researchers began to develop
graphical user interfaces (GUIs) to provide an alternative user interface for computers, whereby commands were represented by pictorial operations, rather than as textual descriptions. Since they are easier to learn than command line interfaces, they have become the most common way of interacting with a computer. However, command line interpreters remain widely used in conjunction with GUIs. For some complex tasks, the latter are less effective because of the large number of menus and dialog boxes presented and because of the innate difficulty of representing the underlying task graphically.
Scripting
Most command line interpreters support
scripting, to various extents. (They are, after all, interpreters of an interpreted
programming language, albeit that in many cases the language is unique to the particular command line interpreter.) They will interpret scripts (variously termed
shell scripts or
batch files) written in the
language that they interpret. Some command line interpreters also incorporate the interpreter engines of other languages, such as
REXX, in addition to their own, allowing the executing of scripts, in those languages, directly within the command line interpreter itself.
Conversely,
scripting programming languages, in particular those with an
eval function (such as
REXX,
Perl,
Python, or
Jython), can be used to implement command line interpreters. For a few
operating systems, most notably
DOS, such a command interpreter provides a more flexible
command line interface than the one supplied. In other cases, such a command interpreter can present a highly customised user interface employing the user interface and input/output facilities of the language.
Quotes
Examples
★
4DOS - (
DOS,
Windows)
★
4NT - (
Windows NT)
★
Amiga CLI/
Amiga Shell - (
AmigaOS)
★
CL - (
OS/400)
★
Basic-Plus - (
RSTS/E)
★
cmd.exe - (
OS/2,
Windows NT -
Windows Vista)
★
CMS - (
VM/CMS)
★
COMMAND.COM - (
DOS,
Windows 95 -
Windows Me)
★
Commodore DOS Wedge - (
Commodore 64)
★
DCL - (
OpenVMS)
★
GMLCMD - (
Windows)
★
iSeries QSHELL - (
IBM OS/400)
★
SymShell - (
SymbOS)
★
TSO - (
MVS,
z/OS)
★
Unix shell programs such as
sh,
Bash,
csh and others
★
Windows PowerShell - (
Windows XP -
Windows Vista)
★
Windows Recovery Console - (
Windows 2000 -
Windows Vista)
★
YouShell - (
YouOS)
★
WinConsole
See also
★
Shell (computing)
★
Text terminal
★
Command line argument
★
Batch processing
★
Batch file
★
Shell script
★
Scripting language
★
Domain-specific programming language
★
clig for
tcl/
c
References
External links
★
Command Line Warriors — an open site about Command Line Computing.