Information about Command Line Interpreter

Enlarge picture
Screenshot of the MS-DOS command line interpreter COMMAND.COM.
Enlarge picture
Sample screenshot of the command line interpreter Bash.
Enlarge picture
The Windows XP command line interpreter cmd.exe.
Enlarge picture
Screenshot of Windows PowerShell, a .NET-based command line interpreter.
Enlarge picture
The Windows Recovery Console has its own command line interpreter.
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

Although most users think of the shell as an interactive command interpreter, it is really a programming language in which each statement runs a command. Because it must satisfy both the interactive and programming aspects of command execution, it is a strange language, shaped as much by history as by design.

Brian Kernighan & Rob Pike [1]

Examples

See also

References

1. ^ Brian W. Kernighan and Rob Pike, "The UNIX Programming Environment", Prentice-Hall (1984).

External links

In computing, a shell is a piece of software that provides an interface for users. Typically, the term refers to an operating system shell which provides access to the services of a kernel.
..... Click the link for more information.
A computer program is one or more instructions that are intended for execution by a computer. Specifically, it is a symbol or combination of symbols forming an algorithm that may or may not terminate, and that algorithm is written in a programming language.
..... Click the link for more information.
An operating system (OS) is the software that manages the sharing of the resources of a computer. An operating system processes system data and user input, and responds by allocating and managing tasks and internal system resources as a service to users and programs of the
..... Click the link for more information.
A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. Programming languages, like natural languagess, are defined by syntactic and semantic rules which describe their structure and meaning respectively.
..... Click the link for more information.
A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. Programming languages, like natural languagess, are defined by syntactic and semantic rules which describe their structure and meaning respectively.
..... Click the link for more information.
Centuries: 19th century - 20th century - 21st century

1930s 1940s 1950s - 1960s - 1970s 1980s 1990s
1960 1961 1962 1963 1964
1965 1966 1967 1968 1969

- -
-

Their 1960s decade refers to the years from 1960 to 1969, inclusive.
..... Click the link for more information.
command line interface or CLI is a method of interacting with an operating system or software using a command line interpreter. This command line interpreter may be a text terminal, terminal emulator, or remote shell client such as PuTTY.
..... Click the link for more information.
Centuries: 19th century - 20th century - 21st century

1940s 1950s 1960s - 1970s - 1980s 1990s 2000s
1970 1971 1972 1973 1974
1975 1976 1977 1978 1979

- -
- The 1970s decade refers to the years from 1970 to 1979, also called
..... Click the link for more information.
graphical user interface (GUI) is a type of user interface which allows people to interact with a computer and computer-controlled devices which employ graphical icons, visual indicators or special graphical elements called "widgets", along with text, labels or text
..... Click the link for more information.
Scripting redirects here. For other uses, see script.


Scripting languages (commonly called script languages) are computer programming languages that are typically interpreted and can be typed directly from a keyboard.
..... Click the link for more information.
A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. Programming languages, like natural languagess, are defined by syntactic and semantic rules which describe their structure and meaning respectively.
..... Click the link for more information.
A shell script is a script written for the shell, or command line interpreter, of an operating system. It is often considered a simple domain-specific programming language. Typical operations performed by shell scripts include file manipulation, program execution, and printing text.
..... Click the link for more information.
Microsoft Batch File

File extension: .bat .cmd .btm
Type of format: Scripting In MS-DOS, OS/2, and Windows, a batch file is a text file containing a series of commands intended to be executed by the command interpreter.
..... Click the link for more information.
A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. Programming languages, like natural languagess, are defined by syntactic and semantic rules which describe their structure and meaning respectively.
..... Click the link for more information.
REXX

Paradigm: multiparadigm: object-oriented, procedural, structured
Appeared in: 1979
Designed by: Mike Cowlishaw
Developer: Mike Cowlishaw & IBM
Typing discipline: dynamic, everything is a string (ClassicREXX) or object (ObjectRexx)
..... Click the link for more information.
Scripting redirects here. For other uses, see script.


Scripting languages (commonly called script languages) are computer programming languages that are typically interpreted and can be typed directly from a keyboard.
..... Click the link for more information.
In some programming languages, eval is a function which evaluates a string as though it were an expression and returns a result; in others, it executes multiple lines of code as though they had been included instead of the line including the eval.
..... Click the link for more information.
In computer science, a subroutine (function, method, procedure, or subprogram) is a portion of code within a larger program, which performs a specific task and can be relatively independent of the remaining code.
..... Click the link for more information.
REXX

Paradigm: multiparadigm: object-oriented, procedural, structured
Appeared in: 1979
Designed by: Mike Cowlishaw
Developer: Mike Cowlishaw & IBM
Typing discipline: dynamic, everything is a string (ClassicREXX) or object (ObjectRexx)
..... Click the link for more information.
Perl

Paradigm: Multi-paradigm
Appeared in: 1987
Designed by: Larry Wall
Latest release: 5.8.8/ January 31 2006
Typing discipline: Dynamic
Influenced by: AWK, BASIC, BASIC-PLUS, C, C++, Lisp, Pascal, Python, sed, Unix shell
..... Click the link for more information.
Python

Paradigm: Multi-paradigm
Appeared in: 1991
Designed by: Guido van Rossum
Developer: Python Software Foundation
Latest release: 2.5.1/ April 18 2007
Latest unstable release: 3.
..... Click the link for more information.
Jython, formerly known as JPython, is an implementation of the Python programming language written in Java. It was originally created by Jim Hugunin.

Overview

Jython programs can seamlessly import and use any Java class.
..... Click the link for more information.
An operating system (OS) is the software that manages the sharing of the resources of a computer. An operating system processes system data and user input, and responds by allocating and managing tasks and internal system resources as a service to users and programs of the
..... Click the link for more information.
DOS (from Disk Operating System) commonly refers to the family of closely related operating systems which dominated the IBM PC compatible market between 1981 and 1995 (or until about 2000, if Windows 9x systems are included): DR-DOS, FreeDOS, MS-DOS, Novell-DOS, OpenDOS, PC-DOS,
..... Click the link for more information.
command line interface or CLI is a method of interacting with an operating system or software using a command line interpreter. This command line interpreter may be a text terminal, terminal emulator, or remote shell client such as PuTTY.
..... Click the link for more information.
Brian Wilson Kernighan (IPA pronunciation: ['kɛrnɪˌhæn], the 'g' is silent), (born 1942 in Toronto, Ontario, Canada) is a computer scientist who worked at Bell Labs alongside Unix creators Ken Thompson and Dennis
..... Click the link for more information.
Robert C. Pike (born 1956) is a software engineer and author. He is best known for his work at Bell Labs, where he was a member of the Unix team and was involved in the creation of the Plan 9 from Bell Labs and Inferno operating systems, as well as the Limbo programming
..... Click the link for more information.
4DOS is a command line interpreter by JP Software, designed to replace the default command interpreter COMMAND.COM in DOS and Windows 95/98/Me. Related products that substitute for Windows NT's command interpreter (4NT) and IBM's OS/2 command interpreter (4OS2) are
..... Click the link for more information.
DOS (from Disk Operating System) commonly refers to the family of closely related operating systems which dominated the IBM PC compatible market between 1981 and 1995 (or until about 2000, if Windows 9x systems are included): DR-DOS, FreeDOS, MS-DOS, Novell-DOS, OpenDOS, PC-DOS,
..... Click the link for more information.
Microsoft Windows

Screenshot of Windows Vista Ultimate, the latest version of Microsoft Windows.
Company/developer: Microsoft Corporation
OS family: MS-DOS/9x-based, Windows CE, Windows NT
Source model: Closed source

..... Click the link for more information.


This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
Herod_Archelaus


page counter