diff --git a/crates/nu-command/src/core_commands/describe.rs b/crates/nu-command/src/core_commands/describe.rs index b5a988b0c..d10929d4d 100644 --- a/crates/nu-command/src/core_commands/describe.rs +++ b/crates/nu-command/src/core_commands/describe.rs @@ -26,13 +26,20 @@ impl Command for Describe { input: PipelineData, ) -> Result { let head = call.head; - input.map( - move |x| Value::String { - val: x.get_type().to_string(), - span: head, - }, - engine_state.ctrlc.clone(), - ) + if matches!(input, PipelineData::ByteStream(..)) { + Ok(PipelineData::Value( + Value::string("binary", call.head), + None, + )) + } else { + input.map( + move |x| Value::String { + val: x.get_type().to_string(), + span: head, + }, + engine_state.ctrlc.clone(), + ) + } } fn examples(&self) -> Vec {