diff --git a/src/uu/od/src/od.rs b/src/uu/od/src/od.rs index ec5bb595a..359531d4e 100644 --- a/src/uu/od/src/od.rs +++ b/src/uu/od/src/od.rs @@ -435,6 +435,7 @@ pub fn uu_app() -> clap::App<'static, 'static> { .long(options::FORMAT) .help("select output format or formats") .multiple(true) + .number_of_values(1) .value_name("TYPE"), ) .arg( diff --git a/tests/by-util/test_od.rs b/tests/by-util/test_od.rs index 33d7d4dc4..0fc1d5106 100644 --- a/tests/by-util/test_od.rs +++ b/tests/by-util/test_od.rs @@ -46,6 +46,17 @@ fn test_file() { .succeeds() .no_stderr() .stdout_is(unindent(ALPHA_OUT)); + + // Ensure that default format matches `-t o2`, and that `-t` does not absorb file argument + new_ucmd!() + .arg("--endian=little") + .arg("-t") + .arg("o2") + .arg(file.as_os_str()) + .succeeds() + .no_stderr() + .stdout_is(unindent(ALPHA_OUT)); + let _ = remove_file(file); }