Mercurial > vim
annotate runtime/doc/xxd.man @ 35507:1a7250350167 draft default tip
runtime(doc): In builtin overview use {buf} as param for appendbufline/setbufline (#15089)
Commit: https://github.com/vim/vim/commit/f0837ba0b9dba9d30e3dc2626d4f690a2d51103e
Author: errael <errael@raelity.com>
Date: Mon Jun 24 12:27:01 2024 -0700
runtime(doc): In builtin overview use {buf} as param for appendbufline/setbufline (https://github.com/vim/vim/issues/15089)
Signed-off-by: Ernie Rael <errael@raelity.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 24 Jun 2024 21:30:08 +0200 |
parents | 42f061099b39 |
children |
rev | line source |
---|---|
6918 | 1 XXD(1) General Commands Manual XXD(1) |
7 | 2 |
3 | |
4 | |
5 NAME | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
6 xxd - make a hex dump or do the reverse. |
7 | 7 |
8 SYNOPSIS | |
9 xxd -h[elp] | |
10 xxd [options] [infile [outfile]] | |
11 xxd -r[evert] [options] [infile [outfile]] | |
12 | |
13 DESCRIPTION | |
36 | 14 xxd creates a hex dump of a given file or standard input. It can also |
15 convert a hex dump back to its original binary form. Like uuencode(1) | |
16 and uudecode(1) it allows the transmission of binary data in a `mail- | |
6918 | 17 safe' ASCII representation, but has the advantage of decoding to stan‐ |
36 | 18 dard output. Moreover, it can be used to perform binary file patching. |
7 | 19 |
20 OPTIONS | |
6918 | 21 If no infile is given, standard input is read. If infile is specified |
22 as a `-' character, then input is taken from standard input. If no | |
36 | 23 outfile is given (or a `-' character is in its place), results are sent |
24 to standard output. | |
7 | 25 |
6918 | 26 Note that a "lazy" parser is used which does not check for more than |
27 the first option letter, unless the option is followed by a parameter. | |
28 Spaces between a single option letter and its parameter are optional. | |
36 | 29 Parameters to options can be specified in decimal, hexadecimal or octal |
30 notation. Thus -c8, -c 8, -c 010 and -cols 8 are all equivalent. | |
7 | 31 |
32 -a | -autoskip | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
33 Toggle autoskip: A single '*' replaces NUL-lines. Default off. |
7 | 34 |
35 -b | -bits | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
36 Switch to bits (binary digits) dump, rather than hex dump. This |
36 | 37 option writes octets as eight digits "1"s and "0"s instead of a |
38 normal hexadecimal dump. Each line is preceded by a line number | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
39 in hexadecimal and followed by an ASCII (or EBCDIC) representa‐ |
33496
33cbd544dc46
patch 9.0.1998: xxd: cannot reverse a bit dump
Christian Brabandt <cb@256bit.org>
parents:
33444
diff
changeset
|
40 tion. The command line switches -p, -i do not work with this |
36 | 41 mode. |
7 | 42 |
43 -c cols | -cols cols | |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
44 Format <cols> octets per line. Default 16 (-i: 12, -ps: 30, -b: |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
45 6). Max 256. No maximum for -ps. With -ps, 0 results in one |
27118
2f854597399f
patch 8.2.4088: xxd cannot output everything in one line
Bram Moolenaar <Bram@vim.org>
parents:
13571
diff
changeset
|
46 long line of output. |
7 | 47 |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
48 -C | -capitalize |
29352 | 49 Capitalize variable names in C include file style, when using |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
50 -i. |
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
51 |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
52 -d show offset in decimal instead of hex. |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
53 |
7 | 54 -E | -EBCDIC |
36 | 55 Change the character encoding in the righthand column from ASCII |
56 to EBCDIC. This does not change the hexadecimal representation. | |
57 The option is meaningless in combinations with -r, -p or -i. | |
7 | 58 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
59 -e Switch to little-endian hex dump. This option treats byte |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
60 groups as words in little-endian byte order. The default group‐ |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
61 ing of 4 bytes may be changed using -g. This option only ap‐ |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
62 plies to the hex dump, leaving the ASCII (or EBCDIC) representa‐ |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
63 tion unchanged. The command line switches -r, -p, -i do not |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
64 work with this mode. |
6918 | 65 |
7 | 66 -g bytes | -groupsize bytes |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
67 Separate the output of every <bytes> bytes (two hex characters |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
68 or eight bit digits each) by a whitespace. Specify -g 0 to sup‐ |
6918 | 69 press grouping. <Bytes> defaults to 2 in normal mode, 4 in lit‐ |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
70 tle-endian mode and 1 in bits mode. Grouping does not apply to |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
71 PostScript or include style. |
7 | 72 |
73 -h | -help | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
74 Print a summary of available commands and exit. No hex dumping |
36 | 75 is performed. |
7 | 76 |
77 -i | -include | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
78 Output in C include file style. A complete static array defini‐ |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
79 tion is written (named after the input file), unless xxd reads |
36 | 80 from stdin. |
7 | 81 |
82 -l len | -len len | |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
83 Stop after writing <len> octets. |
7 | 84 |
29352 | 85 -n name | -name name |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
86 Override the variable name output when -i is used. The array is |
29352 | 87 named name and the length is named name_len. |
88 | |
6918 | 89 -o offset |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
90 Add <offset> to the displayed file position. |
6918 | 91 |
7 | 92 -p | -ps | -postscript | -plain |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
93 Output in PostScript continuous hex dump style. Also known as |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
94 plain hex dump style. |
7 | 95 |
96 -r | -revert | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
97 Reverse operation: convert (or patch) hex dump into binary. If |
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
98 not writing to stdout, xxd writes into its output file without |
6918 | 99 truncating it. Use the combination -r -p to read plain hexadeci‐ |
100 mal dumps without line number information and without a particu‐ | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
101 lar column layout. Additional whitespace and line breaks are al‐ |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
102 lowed anywhere. Use the combination -r -b to read a bits dump |
33496
33cbd544dc46
patch 9.0.1998: xxd: cannot reverse a bit dump
Christian Brabandt <cb@256bit.org>
parents:
33444
diff
changeset
|
103 instead of a hex dump. |
7 | 104 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
105 -R when |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
106 In the output the hex-value and the value are both colored with |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
107 the same color depending on the hex-value. Mostly helping to |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
108 differentiate printable and non-printable characters. when is |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
109 never, always, or auto (default: auto). When the $NO_COLOR en‐ |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
110 vironment variable is set, colorization will be disabled. |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
111 |
7 | 112 -seek offset |
218 | 113 When used after -r: revert with <offset> added to file positions |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
114 found in hex dump. |
7 | 115 |
116 -s [+][-]seek | |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
117 Start at <seek> bytes abs. (or rel.) infile offset. + indicates |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
118 that the seek is relative to the current stdin file position |
1126 | 119 (meaningless when not reading from stdin). - indicates that the |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
120 seek should be that many characters from the end of the input |
1126 | 121 (or if combined with +: before the current stdin file position). |
122 Without -s option, xxd starts at the current file position. | |
7 | 123 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
124 -u Use upper-case hex letters. Default is lower-case. |
7 | 125 |
126 -v | -version | |
13571
362b27e3f702
patch 8.0.1658: capitalize argument not available in long form
Christian Brabandt <cb@256bit.org>
parents:
6918
diff
changeset
|
127 Show version string. |
7 | 128 |
36 | 129 CAVEATS |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
130 xxd -r has some built-in magic while evaluating line number informa‐ |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
131 tion. If the output file is seekable, then the line numbers at the |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
132 start of each hex dump line may be out of order, lines may be missing, |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
133 or overlapping. In these cases xxd will lseek(2) to the next position. |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
134 If the output file is not seekable, only gaps are allowed, which will |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
135 be filled by null-bytes. |
7 | 136 |
36 | 137 xxd -r never generates parse errors. Garbage is silently skipped. |
7 | 138 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
139 When editing hex dumps, please note that xxd -r skips everything on the |
36 | 140 input line after reading enough columns of hexadecimal data (see option |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
141 -c). This also means that changes to the printable ASCII (or EBCDIC) |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
142 columns are always ignored. Reverting a plain (or PostScript) style hex |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
143 dump with xxd -r -p does not depend on the correct number of columns. |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
144 Here, anything that looks like a pair of hex digits is interpreted. |
7 | 145 |
146 Note the difference between | |
147 % xxd -i file | |
148 and | |
149 % xxd -i < file | |
150 | |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
151 xxd -s +seek may be different from xxd -s seek, as lseek(2) is used to |
36 | 152 "rewind" input. A '+' makes a difference if the input source is stdin, |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
153 and if stdin's file position is not at the start of the file by the |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
154 time xxd is started and given its input. The following examples may |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
155 help to clarify (or further confuse!): |
7 | 156 |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
157 Rewind stdin before reading; needed because the `cat' has already read |
36 | 158 to the end of stdin. |
810 | 159 % sh -c "cat > plain_copy; xxd -s 0 > hex_copy" < file |
7 | 160 |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
161 Hex dump from file position 0x480 (=1024+128) onwards. The `+' sign |
36 | 162 means "relative to the current position", thus the `128' adds to the 1k |
163 where dd left off. | |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
164 % sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +128 > hex_snippet" |
36 | 165 < file |
7 | 166 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
167 Hex dump from file position 0x100 (=1024-768) onwards. |
810 | 168 % sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +-768 > hex_snippet" |
36 | 169 < file |
7 | 170 |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
171 However, this is a rare situation and the use of `+' is rarely needed. |
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
172 The author prefers to monitor the effect of xxd with strace(1) or |
36 | 173 truss(1), whenever -s is used. |
7 | 174 |
175 EXAMPLES | |
810 | 176 Print everything but the first three lines (hex 0x30 bytes) of file. |
7 | 177 % xxd -s 0x30 file |
178 | |
810 | 179 Print 3 lines (hex 0x30 bytes) from the end of file. |
7 | 180 % xxd -s -0x30 file |
181 | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
182 Print 120 bytes as a continuous hex dump with 20 octets per line. |
7 | 183 % xxd -l 120 -ps -c 20 xxd.1 |
36 | 184 2e54482058584420312022417567757374203139 |
185 39362220224d616e75616c207061676520666f72 | |
186 20787864220a2e5c220a2e5c222032317374204d | |
187 617920313939360a2e5c22204d616e2070616765 | |
188 20617574686f723a0a2e5c2220202020546f6e79 | |
189 204e7567656e74203c746f6e79407363746e7567 | |
7 | 190 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
191 Hex dump the first 120 bytes of this man page with 12 octets per line. |
7 | 192 % xxd -l 120 -c 12 xxd.1 |
36 | 193 0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A |
194 000000c: 7567 7573 7420 3139 3936 2220 ugust 1996" | |
195 0000018: 224d 616e 7561 6c20 7061 6765 "Manual page | |
196 0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\ | |
197 0000030: 220a 2e5c 2220 3231 7374 204d "..\" 21st M | |
198 000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\" | |
199 0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut | |
200 0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\" | |
201 0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent | |
202 000006c: 3c74 6f6e 7940 7363 746e 7567 <tony@sctnug | |
7 | 203 |
204 Display just the date from the file xxd.1 | |
36 | 205 % xxd -s 0x36 -l 13 -c 13 xxd.1 |
206 0000036: 3231 7374 204d 6179 2031 3939 36 21st May 1996 | |
7 | 207 |
36 | 208 Copy input_file to output_file and prepend 100 bytes of value 0x00. |
7 | 209 % xxd input_file | xxd -r -s 100 > output_file |
210 | |
211 Patch the date in the file xxd.1 | |
810 | 212 % echo "0000037: 3574 68" | xxd -r - xxd.1 |
36 | 213 % xxd -s 0x36 -l 13 -c 13 xxd.1 |
214 0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996 | |
7 | 215 |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
216 Create a 65537 byte file with all bytes 0x00, except for the last one |
36 | 217 which is 'A' (hex 0x41). |
810 | 218 % echo "010000: 41" | xxd -r > file |
7 | 219 |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
220 Hex dump this file with autoskip. |
7 | 221 % xxd -a -c 12 file |
222 0000000: 0000 0000 0000 0000 0000 0000 ............ | |
223 * | |
224 000fffc: 0000 0000 40 ....A | |
225 | |
29352 | 226 Create a 1 byte file containing a single 'A' character. The number af‐ |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
227 ter '-r -s' adds to the line numbers found in the file; in effect, the |
36 | 228 leading bytes are suppressed. |
810 | 229 % echo "010000: 41" | xxd -r -s -0x10000 > file |
7 | 230 |
35150
42f061099b39
patch 9.1.0404: [security] xxd: buffer-overflow with specific flags
Christian Brabandt <cb@256bit.org>
parents:
33496
diff
changeset
|
231 Use xxd as a filter within an editor such as vim(1) to hex dump a re‐ |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
232 gion marked between `a' and `z'. |
7 | 233 :'a,'z!xxd |
234 | |
36 | 235 Use xxd as a filter within an editor such as vim(1) to recover a binary |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
236 hex dump marked between `a' and `z'. |
7 | 237 :'a,'z!xxd -r |
238 | |
36 | 239 Use xxd as a filter within an editor such as vim(1) to recover one line |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
240 of a hex dump. Move the cursor over the line and type: |
7 | 241 !!xxd -r |
242 | |
243 Read single characters from a serial line | |
244 % xxd -c1 < /dev/term/b & | |
245 % stty < /dev/term/b -echo -opost -isig -icanon min 1 | |
246 % echo -n foo > /dev/term/b | |
247 | |
248 RETURN VALUES | |
249 The following error values are returned: | |
250 | |
251 0 no errors encountered. | |
252 | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
253 -1 operation not supported (xxd -r -i still impossible). |
7 | 254 |
255 1 error while parsing options. | |
256 | |
257 2 problems with input file. | |
258 | |
259 3 problems with output file. | |
260 | |
261 4,5 desired seek position is unreachable. | |
262 | |
263 SEE ALSO | |
264 uuencode(1), uudecode(1), patch(1) | |
265 | |
266 WARNINGS | |
33376
56d291e65044
runtime(doc): regenerate xxd manpage
Christian Brabandt <cb@256bit.org>
parents:
29352
diff
changeset
|
267 The tool's weirdness matches its creator's brain. Use entirely at your |
36 | 268 own risk. Copy files. Trace it. Become a wizard. |
7 | 269 |
270 VERSION | |
271 This manual page documents xxd version 1.7 | |
272 | |
273 AUTHOR | |
274 (c) 1990-1997 by Juergen Weigert | |
275 <jnweiger@informatik.uni-erlangen.de> | |
276 | |
277 Distribute freely and credit me, | |
278 make money and share with me, | |
279 lose money and don't ask me. | |
280 | |
281 Manual page started by Tony Nugent | |
282 <tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au> | |
36 | 283 Small changes by Bram Moolenaar. Edited by Juergen Weigert. |
7 | 284 |
36 | 285 Manual page for xxd August 1996 XXD(1) |