Scroll to navigation

IEX(1) General Commands Manual IEX(1)

NAME

iex
The Elixir shell

SYNOPSIS

iex [OPTIONS]

DESCRIPTION

The interactive shell is used for evaluation, debugging and introspection of the Elixir runtime system. It is also possible to use the program for testing the work of small pieces of code escaping the stage of saving the code in a file.

OPTIONS

Note that many of the options mentioned here were borrowed from the Erlang shell, therefore erl(1) can be used as an additional source of information on the options.
expression
Evaluates the specified expression.
file
Requires the specified file. In other words, the file is checked for existence at the start of iex.
script
Runs the specified script.
directory
Adds the specified directory to the beginning of the code path. If the directory already exists, it will be removed from its old position and put to the beginning.

See also the function Code.prepend_path/1.

file
Does the same thing as -r (see above) but in parallel.
directory
Adds the specified directory to the end of the code path. If the directory already exists, it will be neither removed from its old position nor put to the end.

See also the function Code.append_path/1.

application
Starts the specified application and all its dependencies.
parameters
Serves the same purpose as ELIXIR_ERL_OPTIONS (see the ENVIRONMENT section)
value
Specifies the magic cookie value. If the value isn't specified via the option when the node starts, it will be taken from the file ~/.erlang.cookie (see the FILES section). Distributed nodes can interact with each other only when their magic cookies are equal.

See also the function Node.set_cookie/2.

Runs the Erlang runtime system detached from the controlling terminal.
Starts a hidden node.

Connections between nodes are transitive. For example, if node A is connected to node B, and node B is connected to node C, then node A is connected to node C. The option --hidden allows creating a node which can be connected to another node, escaping redundant connections.

The function Node.list/0 allows getting the list of nodes connected to the target node, however the list won't include hidden nodes. Depending on the input parameter, the function Node.list/1 allows getting the list which contains only hidden nodes (the parameter :hidden) or both hidden and not hidden nodes (the parameter :connected).

name
Gives a node a short name and starts it. Short names take the form of name@host, where host is the name of the target host (hostname(1)) which runs the node. The nodes with short names can interact with each other only in the same local network.
name
Gives a node a long name and starts it. Long names take the form of name@host, where host is the IP address of the host which runs the node. In contrast to the nodes with short names, the nodes with long names aren't limited by boundaries of a local network (see above).
file
Loads the specified file instead of .iex.exs (see the FILES section).
node
Connects to the specified node which was started with the --sname or --name options (see above).
Separates the options passed to the compiler from the options passed to the executed code.

ENVIRONMENT

Allows passing parameters to the Erlang runtime.

FILES

~/.erlang.cookie
Stores the magic cookie value which is used only when it wasn't specified via the option --cookie (see above). If the file doesn't exist when a node starts, it will be created.
.iex.exs
After iex starts, it seeks the file .iex.exs and, in a case of success, executes the code from the file in the context of the shell. At first the search starts in the current working directory, then, if necessary, it continues in the home directory.

SEE ALSO

elixir(1), elixirc(1), mix(1)

AUTHOR

This manual page contributed by Evgeny Golyshev.

INTERNET RESOURCES

Main website: http://elixir-lang.org
 
Documentation: http://elixir-lang.org/docs.html
 
April 10, 2015 Linux 4.19.0-10-amd64