2.1.2.2 Definition: Command Line Interface (CLI)

Return to Top

Command Line Interface (CLI) is an interface that uses text based commands to control an external Application, Utility or service. The command text follows prescribed syntax as described by an external document. Generally, the syntax description uses Backus–Naur Form (BNF) or ideally the Augmented BNF (ABNF) as described in IETF RFCs 5234 and 7405.

An Overall Flow for Command Lines

Figure is a simplified flow of how a CLI opertes. An operator enters commands into a tern=minal and submits the commands to a CLI which can then invoke one or more APIs using any required protocols to get the Application, Utility or Service to respond. If the commands are sent over a network Local Area Network (LAN) or Wide Area Network (WAN) to another computer, the commands are sent securely using Secure Shell (SSH).

It is also possible that there can be multiple implementations for any particular Command string. This allows the originators of the commands to used different implementation based off of business decisions. For example, if the command string is comprised of SQL commands, then the DBMS implementation be be chaanged without having to retrain the user typing commands or changing the code that generates the commands.