Nushell
Get Nu!
Getting Started
  • The Nushell Book
  • Command Reference
  • Cookbook
  • Language Reference Guide
  • Contributing Guide
Blog
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
  • 한국어
GitHub
Get Nu!
Getting Started
  • The Nushell Book
  • Command Reference
  • Cookbook
  • Language Reference Guide
  • Contributing Guide
Blog
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
  • 한국어
GitHub
  • Categories

    • Bits
    • Bytes
    • Chart
    • Conversions
    • Core
    • Database
    • Dataframe
    • Dataframe Or Lazyframe
    • Date
    • Debug
    • Default
    • Env
    • Experimental
    • Expression
    • Filesystem
    • Filters
    • Formats
    • Generators
    • Hash
    • History
    • Lazyframe
    • Math
    • Misc
    • Network
    • Path
    • Platform
    • Plugin
    • Prompt
    • Random
    • Removed
    • Shells
    • Strings
    • System
    • Viewers

describe for core

Describe the type and structure of the value(s) piped in.

Signature

> describe {flags}

Flags

  • --no-collect, -n: do not collect streams of structured data
  • --detailed, -d: show detailed information about the value

Input/output types:

inputoutput
anyany

Examples

Describe the type of a string

> 'hello' | describe
string

Describe the type of a record in a detailed way

> {shell:'true', uwu:true, features: {bugs:false, multiplatform:true, speed: 10}, fib: [1 1 2 3 5 8], on_save: {|x| $'Saving ($x)'}, first_commit: 2019-05-10, my_duration: (4min + 20sec)} | describe -d
╭───────────────┬────────────────────────────────────────────────────────────────────────────────────────────╮
│ type          │ record                                                                                     │
│ detailed_type │ record<shell: string, uwu: bool, features: record<bugs: bool, multiplatform: bool, speed:  │
│               │ int>, fib: list<int>, on_save: closure, first_commit: datetime, my_duration: duration>     │
│               │ ╭──────────────┬─────────────────────────────────────────────────────────────────────────╮ │
│ columns       │ │              │ ╭───────────────┬────────────────────────╮                              │ │
│               │ │ shell        │ │ type          │ string                 │                              │ │
│               │ │              │ │ detailed_type │ string                 │                              │ │
│               │ │              │ │ rust_type     │ &alloc::string::String │                              │ │
│               │ │              │ │ value         │ true                   │                              │ │
│               │ │              │ ╰───────────────┴────────────────────────╯                              │ │
│               │ │              │ ╭───────────────┬──────╮                                                │ │
│               │ │ uwu          │ │ type          │ bool │                                                │ │
│               │ │              │ │ detailed_type │ bool │                                                │ │
│               │ │              │ │ rust_type     │ bool │                                                │ │
│               │ │              │ │ value         │ true │                                                │ │
│               │ │              │ ╰───────────────┴──────╯                                                │ │
│               │ │              │ ╭───────────────┬─────────────────────────────────────────────────────╮ │ │
│               │ │ features     │ │ type          │ record                                              │ │ │
│               │ │              │ │ detailed_type │ record<bugs: bool, multiplatform: bool, speed: int> │ │ │
│               │ │              │ │               │ ╭───────────────┬─────────────────────────────────╮ │ │ │
│               │ │              │ │ columns       │ │               │ ╭──────────────────┬──────────╮ │ │ │ │
│               │ │              │ │               │ │ bugs          │ │ type             │ bool     │ │ │ │ │
│               │ │              │ │               │ │               │ │ detailed_type    │ bool     │ │ │ │ │
│               │ │              │ │               │ │               │ │ rust_type        │ bool     │ │ │ │ │
│               │ │              │ │               │ │               │ │ value            │ false    │ │ │ │ │
│               │ │              │ │               │ │               │ ╰──────────────────┴──────────╯ │ │ │ │
│               │ │              │ │               │ │               │ ╭───────────────┬──────╮        │ │ │ │
│               │ │              │ │               │ │ multiplatform │ │ type          │ bool │        │ │ │ │
│               │ │              │ │               │ │               │ │ detailed_type │ bool │        │ │ │ │
│               │ │              │ │               │ │               │ │ rust_type     │ bool │        │ │ │ │
│               │ │              │ │               │ │               │ │ value         │ true │        │ │ │ │
│               │ │              │ │               │ │               │ ╰───────────────┴──────╯        │ │ │ │
│               │ │              │ │               │ │               │ ╭───────────────┬─────╮         │ │ │ │
│               │ │              │ │               │ │ speed         │ │ type          │ int │         │ │ │ │
│               │ │              │ │               │ │               │ │ detailed_type │ int │         │ │ │ │
│               │ │              │ │               │ │               │ │ rust_type     │ i64 │         │ │ │ │
│               │ │              │ │               │ │               │ │ value         │ 10  │         │ │ │ │
│               │ │              │ │               │ │               │ ╰───────────────┴─────╯         │ │ │ │
│               │ │              │ │               │ ╰───────────────┴─────────────────────────────────╯ │ │ │
│               │ │              │ │ rust_type     │ &nu_utils::shared_cow::SharedCow<nu_protocol::value │ │ │
│               │ │              │ │               │ ::record::Record>                                   │ │ │
│               │ │              │ ╰───────────────┴─────────────────────────────────────────────────────╯ │ │
│               │ │              │ ╭─────────────────┬───────────────────────────────────────────────────╮ │ │
│               │ │ fib          │ │ type            │ list                                              │ │ │
│               │ │              │ │ detailed_type   │ list<int>                                         │ │ │
│               │ │              │ │ length          │ 6                                                 │ │ │
│               │ │              │ │ rust_type       │ &mut alloc::vec::Vec<nu_protocol::value::Value>   │ │ │
│               │ │              │ │                 │ ╭───┬──────┬───────────────┬───────────┬───────╮  │ │ │
│               │ │              │ │ value           │ │ # │ type │ detailed_type │ rust_type │ value │  │ │ │
│               │ │              │ │                 │ ├───┼──────┼───────────────┼───────────┼───────┤  │ │ │
│               │ │              │ │                 │ │ 0 │ int  │ int           │ i64       │     1 │  │ │ │
│               │ │              │ │                 │ │ 1 │ int  │ int           │ i64       │     1 │  │ │ │
│               │ │              │ │                 │ │ 2 │ int  │ int           │ i64       │     2 │  │ │ │
│               │ │              │ │                 │ │ 3 │ int  │ int           │ i64       │     3 │  │ │ │
│               │ │              │ │                 │ │ 4 │ int  │ int           │ i64       │     5 │  │ │ │
│               │ │              │ │                 │ │ 5 │ int  │ int           │ i64       │     8 │  │ │ │
│               │ │              │ │                 │ ╰───┴──────┴───────────────┴───────────┴───────╯  │ │ │
│               │ │              │ ╰─────────────────┴───────────────────────────────────────────────────╯ │ │
│               │ │              │ ╭───────────────┬─────────────────────────────────────────────────────╮ │ │
│               │ │ on_save      │ │ type          │ closure                                             │ │ │
│               │ │              │ │ detailed_type │ closure                                             │ │ │
│               │ │              │ │ rust_type     │ &alloc::boxed::Box<nu_protocol::engine::closure::Cl │ │ │
│               │ │              │ │               │ osure>                                              │ │ │
│               │ │              │ │ value         │ closure_1                                           │ │ │
│               │ │              │ │               │ ╭──────────┬─────────╮                              │ │ │
│               │ │              │ │ signature     │ │ name     │         │                              │ │ │
│               │ │              │ │               │ │ category │ default │                              │ │ │
│               │ │              │ │               │ ╰──────────┴─────────╯                              │ │ │
│               │ │              │ ╰───────────────┴─────────────────────────────────────────────────────╯ │ │
│               │ │              │ ╭───────────────┬─────────────────────────────────────────────────────╮ │ │
│               │ │ first_commit │ │ type          │ datetime                                            │ │ │
│               │ │              │ │ detailed_type │ datetime                                            │ │ │
│               │ │              │ │ rust_type     │ chrono::datetime::DateTime<chrono::offset::fixed::F │ │ │
│               │ │              │ │               │ ixedOffset>                                         │ │ │
│               │ │              │ │ value         │ 6 years ago                                         │ │ │
│               │ │              │ ╰───────────────┴─────────────────────────────────────────────────────╯ │ │
│               │ │              │ ╭───────────────┬────────────╮                                          │ │
│               │ │ my_duration  │ │ type          │ duration   │                                          │ │
│               │ │              │ │ detailed_type │ duration   │                                          │ │
│               │ │              │ │ rust_type     │ i64        │                                          │ │
│               │ │              │ │ value         │ 4min 20sec │                                          │ │
│               │ │              │ ╰───────────────┴────────────╯                                          │ │
│               │ ╰──────────────┴─────────────────────────────────────────────────────────────────────────╯ │
│ rust_type     │ &nu_utils::shared_cow::SharedCow<nu_protocol::value::record::Record>                       │
╰───────────────┴────────────────────────────────────────────────────────────────────────────────────────────╯

Describe the type of a stream with detailed information

> [1 2 3] | each {|i| echo $i} | describe -d

Describe a stream of data, collecting it first

> [1 2 3] | each {|i| echo $i} | describe

Describe the input but do not collect streams

> [1 2 3] | each {|i| echo $i} | describe --no-collect