2.1.1 Command Line Options

Here is a complete list of the command line options that Octave accepts.

--built-in-docstrings-file filename

Specify the name of the file containing documentation strings for the built-in functions of Octave. This value is normally correct and should only need to specified in extraordinary situations.

--debug
-d

Enter parser debugging mode. Using this option will cause Octave’s parser to print a lot of information about the commands it reads, and is probably only useful if you are actually trying to debug the parser.

--debug-jit

Enable JIT compiler debugging and tracing.

--doc-cache-file filename

Specify the name of the doc cache file to use. The value of filename specified on the command line will override any value of OCTAVE_DOC_CACHE_FILE found in the environment, but not any commands in the system or user startup files that use the doc_cache_file function.

--echo-commands
-x

Echo commands as they are executed.

--eval code

Evaluate code and exit when finished unless --persist is also specified.

--exec-path path

Specify the path to search for programs to run. The value of path specified on the command line will override any value of OCTAVE_EXEC_PATH found in the environment, but not any commands in the system or user startup files that call the EXEC_PATH function.

--gui

Start the graphical user interface (GUI).

--help
-h

Print short help message and exit.

--image-path path

Add path to the head of the search path for images. The value of path specified on the command line will override any value of OCTAVE_IMAGE_PATH found in the environment, but not any commands in the system or user startup files that call the IMAGE_PATH function.

--info-file filename

Specify the name of the info file to use. The value of filename specified on the command line will override any value of OCTAVE_INFO_FILE found in the environment, but not any commands in the system or user startup files that use the info_file function.

--info-program program

Specify the name of the info program to use. The value of program specified on the command line will override any value of OCTAVE_INFO_PROGRAM found in the environment, but not any commands in the system or user startup files that use the info_program function.

--interactive
-i

Force interactive behavior. This can be useful for running Octave via a remote shell command or inside an Emacs shell buffer.

--jit-compiler

Enable the JIT compiler used for accelerating loops.

--line-editing

Force readline use for command-line editing.

--no-gui

Disable the graphical user interface (GUI) and use the command line interface (CLI) instead. This is the default behavior, but this option may be useful to override a previous --gui.

--no-history
-H

Disable recording of command-line history.

--no-init-file

Don’t read the initialization files ~/.octaverc and .octaverc.

--no-init-path

Don’t initialize the search path for function files to include default locations.

--no-line-editing

Disable command-line editing.

--no-site-file

Don’t read the site-wide octaverc initialization files.

--no-window-system
-W

Disable use of a windowing system including graphics. This forces a strictly terminal-only environment.

--norc
-f

Don’t read any of the system or user initialization files at startup. This is equivalent to using both of the options --no-init-file and --no-site-file.

--path path
-p path

Add path to the head of the search path for function files. The value of path specified on the command line will override any value of OCTAVE_PATH found in the environment, but not any commands in the system or user startup files that set the internal load path through one of the path functions.

--persist

Go to interactive mode after --eval or reading from a file named on the command line.

--silent
--quiet
-q

Don’t print the usual greeting and version message at startup.

--texi-macros-file filename

Specify the name of the file containing Texinfo macros for use by makeinfo.

--traditional
--braindead

For compatibility with MATLAB, set initial values for user preferences to the following values

PS1                             = ">> "
PS2                             = ""
beep_on_error                   = true
confirm_recursive_rmdir         = false
crash_dumps_octave_core         = false
disable_diagonal_matrix         = true
disable_permutation_matrix      = true
disable_range                   = true
fixed_point_format              = true
history_timestamp_format_string = "%%-- %D %I:%M %p --%%"
print_empty_dimensions          = false
save_default_options            = "-mat-binary"
struct_levels_to_print          = 0

and disable the following warnings

Octave:abbreviated-property-match
Octave:colon-nonscalar-argument
Octave:data-file-in-path
Octave:function-name-clash
Octave:possible-matlab-short-circuit-operator

Note that this does not enable the Octave:language-extension warning, which you might want if you want to be told about writing code that works in Octave but not MATLAB (see warning, warning_ids).

--verbose
-V

Turn on verbose output.

--version
-v

Print the program version number and exit.

file

Execute commands from file. Exit when done unless --persist is also specified.

Octave also includes several functions which return information about the command line, including the number of arguments and all of the options.

: argv ()

Return the command line arguments passed to Octave.

For example, if you invoked Octave using the command

octave --no-line-editing --silent

argv would return a cell array of strings with the elements --no-line-editing and --silent.

If you write an executable Octave script, argv will return the list of arguments passed to the script. See Executable Octave Programs, for an example of how to create an executable Octave script.

: program_name ()

Return the last component of the value returned by program_invocation_name.

See also: program_invocation_name.

: program_invocation_name ()

Return the name that was typed at the shell prompt to run Octave.

If executing a script from the command line (e.g., octave foo.m) or using an executable Octave script, the program name is set to the name of the script. See Executable Octave Programs, for an example of how to create an executable Octave script.

See also: program_name.

Here is an example of using these functions to reproduce the command line which invoked Octave.

printf ("%s", program_name ());
arg_list = argv ();
for i = 1:nargin
  printf (" %s", arg_list{i});
endfor
printf ("\n");

See Indexing Cell Arrays, for an explanation of how to retrieve objects from cell arrays, and Defining Functions, for information about the variable nargin.

© 1996–2020 John W. Eaton
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://octave.org/doc/v6.3.0/Command-Line-Options.html