FD.io VPP  v18.10-32-g1161dda
Vector Packet Processing
Command line session

exec

Summary/usage

exec <filename>.

Description

Executes a sequence of CLI commands which are read from a file. If a command is unrecognised or otherwise invalid then the usual CLI feedback will be generated, however execution of subsequent commands from the file will continue.

The VPP code is indifferent to the file location. However, if SELinux is enabled, then the file needs to have an SELinux label the VPP process is allowed to access. For example, if a file is created in '/usr/share/vpp/', it will be allowed. However, files manually created in '/tmp/' or '/home/<user>/' will not be accessible by the VPP process when SELinux is enabled.

Example usage
Sample file:
$ cat /usr/share/vpp/scripts/gigup.txt
set interface state GigabitEthernet0/8/0 up
set interface state GigabitEthernet0/9/0 up
Example of how to execute a set of CLI commands from a file:
vpp# exec /usr/share/vpp/scripts/gigup.txt

Declaration and implementation

Declaration: cli_exec (src/vlib/unix/cli.c line 3197)

Implementation: unix_cli_exec.

history

Summary/usage

Show current session command history.

Description

Displays the command history for the current session, if any.

Declaration and implementation

Declaration: cli_unix_cli_show_history (src/vlib/unix/cli.c line 3355)

Implementation: unix_cli_show_history.

q

Summary/usage

Exit CLI.

Declaration and implementation

Declaration: unix_cli_q_command (src/vlib/unix/cli.c line 3108)

Implementation: unix_cli_quit.

quit

Summary/usage

Exit CLI.

Description

Terminates the current CLI session.

If VPP is running in interactive mode and this is the console session (that is, the session on stdin) then this will also terminate VPP.

Declaration and implementation

Declaration: unix_cli_quit_command (src/vlib/unix/cli.c line 3100)

Implementation: unix_cli_quit.

set terminal ansi

Summary/usage

set terminal ansi [on|off].

Description

Enables or disables the use of ANSI control sequences by this terminal. The default will vary based on terminal detection at the start of the session.

ANSI control sequences are used in a small number of places to provide, for example, color text output and to control the cursor in the pager.

Declaration and implementation

Declaration: cli_unix_cli_set_terminal_ansi (src/vlib/unix/cli.c line 3671)

Implementation: unix_cli_set_terminal_ansi.

set terminal history

Summary/usage

set terminal history [on|off] [limit <lines>].

Description

Enables or disables the command history function of the current terminal. Generally this defaults to enabled.

This command also allows the maximum size of the history buffer for this session to be altered.

Declaration and implementation

Declaration: cli_unix_cli_set_terminal_history (src/vlib/unix/cli.c line 3630)

Implementation: unix_cli_set_terminal_history.

set terminal pager

Summary/usage

set terminal pager [on|off] [limit <lines>].

Description

Enables or disables the terminal pager for this session. Generally this defaults to enabled.

Additionally allows the pager buffer size to be set; though note that this value is set globally and not per session.

Declaration and implementation

Declaration: cli_unix_cli_set_terminal_pager (src/vlib/unix/cli.c line 3564)

Implementation: unix_cli_set_terminal_pager.

show cli-sessions

Summary/usage

Show current CLI sessions.

Description

Displays a summary of all the current CLI sessions.

Typically used to diagnose connection issues with the CLI socket.

Example usage
vpp# show cli-sessions
PNI   FD    Name                 Flags
343   0     unix-cli-stdin       IslpA
344   7     unix-cli-local:20    ISlpA
346   8     unix-cli-local:21    iSLpa

In this example we have the debug console of the running process on stdin/out, we have an interactive socket session and we also have a non-interactive socket session.

Fields:

  • PNI: Process node index.
  • FD: Unix file descriptor.
  • Name: Name of the session.
  • Flags: Various flags that describe the state of the session.

Flags have the following meanings; lower-case typically negates upper-case:

  • I Interactive session.
  • S Connected by socket.
  • s Not a socket, likely stdin.
  • L Line-by-line mode.
  • l Char-by-char mode.
  • P EPIPE detected on connection; it will close soon.
  • A ANSI-capable terminal.

Declaration and implementation

Declaration: cli_unix_cli_show_cli_sessions (src/vlib/unix/cli.c line 3505)

Implementation: unix_cli_show_cli_sessions.

show terminal

Summary/usage

Show current session terminal settings.

Description

Displays various information about the state of the current terminal session.

Example usage
vpp# show terminal
Terminal name:   unix-cli-stdin
Terminal mode:   char-by-char
Terminal width:  123
Terminal height: 48
ANSI capable:    yes
Interactive:     yes
History enabled: yes
History limit:   50
Pager enabled:   yes
Pager limit:     100000
CRLF mode:       LF

Declaration and implementation

Declaration: cli_unix_cli_show_terminal (src/vlib/unix/cli.c line 3425)

Implementation: unix_cli_show_terminal.

show unix errors

Summary/usage

Show Unix system call error history.

Declaration and implementation

Declaration: cli_unix_show_errors (src/vlib/unix/cli.c line 3273)

Implementation: unix_show_errors.

show unix files

Summary/usage

Show Unix files in use.

Declaration and implementation

Declaration: cli_unix_show_files (src/vlib/unix/cli.c line 3316)

Implementation: unix_show_files.