nushell

Modern shell that treats data as structured information

TLDR

Start the shell
$ nu
Run a command string and exit
$ nu -c "[command]"
Run a script file
$ nu [path/to/script.nu]
Start as a login shell
$ nu --login
Start without loading config files
$ nu -n
List files as structured data (inside nu)
$ ls | where size > 1mb | sort-by modified
Convert JSON to a table (inside nu)
$ open [data.json] | select name age | sort-by age

SYNOPSIS

nu [options] [script]

DESCRIPTION

nushell (command: nu) is a modern shell that treats data as structured information rather than plain text. It brings spreadsheet-like data manipulation to the command line with built-in support for JSON, CSV, YAML, SQLite, Excel, and more.Nu pipelines use structured data so you can safely select, filter, and sort the same way every time. It draws inspiration from PowerShell, functional programming languages, and modern CLI tools. It is cross-platform with first-class support for Windows, macOS, and Linux.

PARAMETERS

-c, --commands COMMAND

Execute a command string and exit.
--config FILE
Specify a configuration file (config.nu).
--env-config FILE
Specify an environment configuration file (env.nu).
-n, --no-config-file
Start without loading config files.
--login, -l
Start as a login shell.
--stdin
Redirect stdin for scripts.
--table-mode MODE
Table display mode (rounded, basic, compact, etc.).

CONFIGURATION

$nu.config-path

Configuration file location (use `$nu.config-path` to find it).
$nu.env-path
Environment config location (use `$nu.env-path` to find it).
login.nu
Runs only when Nushell starts as a login shell.

INSTALL

sudo dnf install nushell
sudo pacman -S nushell
sudo zypper install nushell
brew install nushell
nix profile install nixpkgs#nushell

CAVEATS

Not fully POSIX-compatible. Some Bash scripts and idioms do not work directly in Nushell. Plugin ecosystem is still evolving.

HISTORY

nushell was created by Yehuda Katz and Jonathan Turner and is written in Rust. Development started in 2019.

SEE ALSO

bash(1), zsh(1), fish(1), pwsh(1)