diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 19:33:30 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 19:33:30 +0000 |
commit | c61e14d3a8412cd50d98aab604e607692c844c8a (patch) | |
tree | 4925aca0e6b64c8664ea2f3fdfa99a52dc93d5da /text-utils/hexdump.c | |
parent | Adding upstream version 2.39.3. (diff) | |
download | util-linux-c61e14d3a8412cd50d98aab604e607692c844c8a.tar.xz util-linux-c61e14d3a8412cd50d98aab604e607692c844c8a.zip |
Adding upstream version 2.40.upstream/2.40
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | text-utils/hexdump.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/text-utils/hexdump.c b/text-utils/hexdump.c index 73b3a94..3674455 100644 --- a/text-utils/hexdump.c +++ b/text-utils/hexdump.c @@ -66,6 +66,7 @@ parse_args(int argc, char **argv, struct hexdump *hex) static const struct option longopts[] = { {"one-byte-octal", no_argument, NULL, 'b'}, + {"one-byte-hex", no_argument, NULL, 'X'}, {"one-byte-char", no_argument, NULL, 'c'}, {"canonical", no_argument, NULL, 'C'}, {"two-bytes-decimal", no_argument, NULL, 'd'}, @@ -82,12 +83,16 @@ parse_args(int argc, char **argv, struct hexdump *hex) {NULL, no_argument, NULL, 0} }; - while ((ch = getopt_long(argc, argv, "bcCde:f:L::n:os:vxhV", longopts, NULL)) != -1) { + while ((ch = getopt_long(argc, argv, "bXcCde:f:L::n:os:vxhV", longopts, NULL)) != -1) { switch (ch) { case 'b': add_fmt(hex_offt, hex); add_fmt("\"%07.7_ax \" 16/1 \"%03o \" \"\\n\"", hex); break; + case 'X': + add_fmt("\"%07.7_Ax\n\"", hex); + add_fmt("\"%07.7_ax \" 16/1 \" %02x \" \"\\n\"", hex); + break; case 'c': add_fmt(hex_offt, hex); add_fmt("\"%07.7_ax \" 16/1 \"%3_c \" \"\\n\"", hex); @@ -166,6 +171,7 @@ void __attribute__((__noreturn__)) usage(void) fputs(USAGE_OPTIONS, out); fputs(_(" -b, --one-byte-octal one-byte octal display\n"), out); + fputs(_(" -X, --one-byte-hex one-byte hexadecimal display\n"), out); fputs(_(" -c, --one-byte-char one-byte character display\n"), out); fputs(_(" -C, --canonical canonical hex+ASCII display\n"), out); fputs(_(" -d, --two-bytes-decimal two-byte decimal display\n"), out); @@ -181,12 +187,12 @@ void __attribute__((__noreturn__)) usage(void) fputs(_(" -v, --no-squeezing output identical lines\n"), out); fputs(USAGE_SEPARATOR, out); - printf(USAGE_HELP_OPTIONS(27)); + fprintf(out, USAGE_HELP_OPTIONS(27)); fputs(USAGE_ARGUMENTS, out); - printf(USAGE_ARG_SIZE(_("<length> and <offset>"))); + fprintf(out, USAGE_ARG_SIZE(_("<length> and <offset>"))); - printf(USAGE_MAN_TAIL("hexdump(1)")); + fprintf(out, USAGE_MAN_TAIL("hexdump(1)")); exit(EXIT_SUCCESS); } |