LinuxCommandLibrary

elvish

Expressive shell with modern programming features

TLDR

Start Elvish shell

$ elvish
copy
Run Elvish script
$ elvish [script.elv]
copy
Run command string
$ elvish -c "[echo hello]"
copy
Start with specific config
$ elvish --rc [config.elv]
copy

SYNOPSIS

elvish [options] [script] [args]

DESCRIPTION

Elvish is an expressive programming language and a powerful shell for Unix-like systems. It combines shell features with a modern programming language including namespaces, lambdas, and structured data.
The shell offers pipelines that pass structured data (not just strings), built-in file manager (Ctrl-N), and comprehensive history with directory history (Ctrl-L). Its syntax is cleaner than traditional shells.
Elvish provides real-time syntax highlighting, intelligent completions, and a consistent programming model for both interactive use and scripting.

PARAMETERS

SCRIPT

Script file to execute.
-c CODE
Execute command string.
--rc FILE
Configuration file.
--norc
Don't load rc file.
--help
Display help information.

CONFIGURATION

~/.config/elvish/rc.elv or ~/.elvish/rc.elv

Main configuration file loaded on shell startup.
~/.config/elvish/lib/
Directory for Elvish modules and libraries.

CAVEATS

Not POSIX-compatible. Scripts not portable to bash/zsh. Smaller community than mainstream shells. Some traditional shell patterns don't work.

HISTORY

Elvish was created by Qi Xiao starting around 2014 as a shell designed from scratch with modern language features rather than POSIX compatibility as the primary goal.

SEE ALSO

bash(1), zsh(1), fish(1), nushell(1)

> TERMINAL_GEAR

Curated for the Linux community

Copied to clipboard

> TERMINAL_GEAR

Curated for the Linux community