use for core
Use definitions from a module, making them available in your shell.
Signature
> use {flags} (module) ...rest
Parameters
module: Module or module file (nullfor no-op)....rest: Which members of the module to import.
Input/output types:
| input | output |
|---|---|
| nothing | nothing |
Examples
Define a custom command in a module and call it
> module spam { export def foo [] { "foo" } }; use spam foo; foo
fooDefine a custom command that participates in the environment in a module and call it
> module foo { export def --env bar [] { $env.FOO_BAR = "BAZ" } }; use foo bar; bar; $env.FOO_BAR
BAZUse a plain module name to import its definitions qualified by the module name
> module spam { export def foo [] { "foo" }; export def bar [] { "bar" } }; use spam; (spam foo) + (spam bar)
foobarSpecify * to use all definitions in a module
> module spam { export def foo [] { "foo" }; export def bar [] { "bar" } }; use spam *; (foo) + (bar)
foobarTo use commands with spaces, like subcommands, surround them with quotes
> module spam { export def 'foo bar' [] { "baz" } }; use spam 'foo bar'; foo bar
bazTo use multiple definitions from a module, wrap them in a list
> module spam { export def foo [] { "foo" }; export def 'foo bar' [] { "baz" } }; use spam ['foo', 'foo bar']; (foo) + (foo bar)
foobazNotes
See help std for the standard library module. See help modules to list all available modules.
This command is a parser keyword. For details, check: https://www.nushell.sh/book/thinking_in_nu.html