{
  "name": "od",
  "description": "Octal, decimal, hex, ASCII dump",
  "options": [
    {
      "names": [
        "-A"
      ],
      "description": "Specify the input address base.  The argument base may be\none of d, o, x or n, which specify decimal, octal,\nhexadecimal addresses or no address, respectively",
      "takes_arg": true,
      "arg": {
        "name": "base",
        "suggestions": [
          "d",
          "o",
          "x",
          "n"
        ]
      }
    },
    {
      "names": [
        "-a"
      ],
      "description": "Output named characters.  Equivalent to -t a"
    },
    {
      "names": [
        "-B",
        "-o"
      ],
      "description": "Output octal shorts.  Equivalent to -t o2"
    },
    {
      "names": [
        "-b"
      ],
      "description": "Output octal bytes.  Equivalent to -t o1"
    },
    {
      "names": [
        "-c"
      ],
      "description": "Output C-style escaped characters.  Equivalent to -t c"
    },
    {
      "names": [
        "-D"
      ],
      "description": "Output unsigned decimal ints.  Equivalent to -t u4"
    },
    {
      "names": [
        "-d"
      ],
      "description": "Output unsigned decimal shorts.  Equivalent to -t u2"
    },
    {
      "names": [
        "-e",
        "-F"
      ],
      "description": "Output double-precision floating point numbers.  Equivalent to -t fD"
    },
    {
      "names": [
        "-f"
      ],
      "description": "Output single-precision floating point numbers.  Equivalent to -t fF"
    },
    {
      "names": [
        "-H",
        "-X"
      ],
      "description": "Output hexadecimal ints.  Equivalent to -t x4"
    },
    {
      "names": [
        "-h",
        "-x"
      ],
      "description": "Output hexadecimal shorts.  Equivalent to -t x2"
    },
    {
      "names": [
        "-I",
        "-L",
        "-l"
      ],
      "description": "Output signed decimal longs.  Equivalent to -t dL"
    },
    {
      "names": [
        "-i"
      ],
      "description": "Output signed decimal ints.  Equivalent to -t dI"
    },
    {
      "names": [
        "-j"
      ],
      "description": "Skip skip bytes of the combined input before dumping.  The\nnumber may be followed by one of b, k, m or g which\nspecify the units of the number as blocks (512 bytes),\nkilobytes, megabytes and gigabytes",
      "takes_arg": true,
      "arg": {
        "name": "skip"
      }
    },
    {
      "names": [
        "-N"
      ],
      "description": "Dump at most length bytes of input",
      "takes_arg": true,
      "arg": {
        "name": "length"
      }
    },
    {
      "names": [
        "-O"
      ],
      "description": "Output octal ints.  Equivalent to -t o4"
    },
    {
      "names": [
        "-s"
      ],
      "description": "Output signed decimal shorts.  Equivalent to -t d2"
    },
    {
      "names": [
        "-t"
      ],
      "description": "Specify the output format.  The type argument is a string\ncontaining one or more of the following kinds of type specificers: a,\nc, [d|o|u|x][C|S|I|L|n], or f[F|D|L|n]. See the man page for meanings",
      "takes_arg": true,
      "arg": {
        "name": "type",
        "suggestions": [
          "a",
          "c",
          "dC",
          "dS",
          "dI",
          "dL",
          "dn",
          "oC",
          "oS",
          "oI",
          "oL",
          "on",
          "uC",
          "uS",
          "uI",
          "uL",
          "un",
          "xC",
          "xS",
          "xI",
          "xL",
          "xn",
          "fF",
          "fD",
          "fL",
          "fn"
        ]
      }
    },
    {
      "names": [
        "-v"
      ],
      "description": "Write all input data, instead of replacing lines of duplicate values with a '*'"
    }
  ],
  "args": [
    {
      "name": "[+]offset[.][Bb]",
      "description": "Offset",
      "suggestions": [
        "+0b"
      ]
    },
    {
      "name": "file",
      "description": "File name",
      "is_variadic": true,
      "template": "filepaths"
    }
  ]
}
