Mercurial > vim
annotate runtime/doc/xxd-ru.1 @ 34467:95da9260ac66
runtime(r,rhelp,rmd,rnoweb,rrst): Update ftplugin, browsefilter labels (#14126)
Commit: https://github.com/vim/vim/commit/e93afc2e612647e79e1082096ffd6c61e01ac691
Author: dkearns <dougkearns@gmail.com>
Date: Sun Mar 3 05:27:47 2024 +1100
runtime(r,rhelp,rmd,rnoweb,rrst): Update ftplugin, browsefilter labels (https://github.com/vim/vim/issues/14126)
Use the standard format for browsefilter labels:
"File Description (*.ext1, *.ext2, *.ext3)"
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 02 Mar 2024 19:30:07 +0100 |
parents | 33cbd544dc46 |
children | ecb5d46edd81 |
rev | line source |
---|---|
221 | 1 .TH XXD 1 "August 1996" "Страница man для xxd" |
2 .\" | |
3 .\" 21st May 1996 | |
4 .\" Man page author: | |
5 .\" Tony Nugent <tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au> | |
6 .\" Changes by Bram Moolenaar <Bram@vim.org> | |
7 .SH ИМЯ | |
8 .I xxd | |
9 \- создаёт представление файла в виде шестнадцатеричных кодов или выполняет | |
10 обратное преобразование. | |
11 .SH КОМАНДНАЯ СТРОКА | |
12 .B xxd | |
13 \-h[elp] | |
14 .br | |
15 .B xxd | |
16 [ключи] [входной_файл [выходной_файл]] | |
17 .br | |
18 .B xxd | |
19 \-r[evert] [ключи] [входной_файл [выходной_файл]] | |
20 .SH ОПИСАНИЕ | |
21 .I xxd | |
22 создаёт представление указанного файла или данных, прочитанных из потока | |
23 стандартного ввода, в виде шестнадцатеричных кодов. Эта команда также может | |
24 выполнить обратное преобразование заданных шестнадцатеричными кодами данных | |
25 в исходный бинарный формат. | |
26 Подобно командам | |
27 .BR uuencode(1) | |
28 и | |
29 .BR uudecode(1), | |
30 она позволяет выполнять преобразование бинарных данных в ASCII-код, | |
31 который можно передавать по электронной почте, однако, помимо этого, программа | |
32 xxd позволяет выполнять декодирование в поток стандартного вывода, | |
33 а также может применяться для создания заплаток для бинарных файлов. | |
34 .SH КЛЮЧИ ЗАПУСКА | |
35 Если | |
36 .I входной_файл | |
37 не задан, то соответствующие данные читаются из потока стандартного ввода. | |
38 В случае, если в качестве | |
39 .I входного_файла | |
40 используется символ | |
41 .RB \` \- ', | |
42 источником данных также выступает поток стандартного ввода. | |
43 В том случае, если не указан | |
44 .I выходной_файл | |
45 (или вместо него используется символ | |
46 .RB \` \- ' | |
47 ), результат преобразования направляется в поток стандартного вывода. | |
48 .PP | |
49 Обратите внимание, что используется "ленивый" алгоритм разбора ключей, который не | |
50 проверяет более одной буквы ключа, если в этом ключе не используется параметр. | |
51 Пробелы между единственным символом ключа и соответствующим параметром не являются | |
52 обязательными. Параметры ключей могут быть заданы с использованием десятичного, | |
53 шестнадцатеричного или восьмеричного формата. | |
54 Таким образом, ключи | |
55 .BR \-c8 , | |
56 .BR "\-c 8" , | |
57 .B \-c 010 | |
58 и | |
59 .B \-cols 8 | |
60 являются равнозначными. | |
61 .PP | |
62 .TP | |
63 .IR \-a " | " \-autoskip | |
64 Включает автоматический пропуск: вместо последовательности | |
65 нулевых строк используется одиночный символ '*'. По умолчанию | |
66 не применяется. | |
67 .TP | |
68 .IR \-b " | " \-bits | |
69 Вместо шестнадцатеричного кода используются биты (двоичные цифры). | |
70 При использовании этого ключа вместо обычного шестнадцатеричного представления | |
71 октетов используются наборы из восьми символов "1" и "0". Каждая строка | |
72 предваряется номером строки в шестнадцатеричном виде, а завершается символьным | |
33496
33cbd544dc46
patch 9.0.1998: xxd: cannot reverse a bit dump
Christian Brabandt <cb@256bit.org>
parents:
1125
diff
changeset
|
73 представлением (в виде ascii или ebcdic). Ключи \-p, \-i в этом режиме |
221 | 74 не работают. |
75 .TP | |
76 .IR "\-c кол " | " \-cols кол" | |
77 Задаёт количество октетов | |
78 .RI < кол >, | |
79 которое выводится на каждой строке. По умолчанию используется значение 16 | |
80 (\-i: 12, \-ps: 30, \-b: 6). | |
81 Максимально допустимое значение: 256. | |
82 .TP | |
83 .IR \-E " | " \-EBCDIC | |
84 Изменяет способ кодирования символов в правой колонке с ASCII на EBCDIC. Этот ключ | |
85 не изменяет шестнадцатеричное представление. Данный ключ не имеет смысла, | |
86 если используются ключи \-r, \-p или \-i. | |
87 .TP | |
88 .IR "\-g байт " | " \-groupsize байт" | |
89 Позволяет выполнять группировку указанного количества | |
90 .RI < байтов > | |
91 (две шестнадцатеричные цифры или восемь битов), отделяя группы друг от друга пробелами. | |
92 Значение | |
93 .I \-g 0 | |
94 применяется для отказа от использования группировки. | |
95 По умолчанию используется значение | |
96 .RI < байт "> равное " 2 | |
97 в обычном режиме и \fI1\fP в битовом режиме. Группировка не применяется | |
98 в режимах postscript и include. | |
99 .TP | |
100 .IR \-h " | " \-help | |
101 Выводит справку по доступным ключам командной строки и завершает работу программы. | |
102 Создание шестнадцатеричного представления не выполняется. | |
103 .TP | |
104 .IR \-i " | " \-include | |
105 Позволяет создавать вывод в стиле подключаемых заголовочных файлов языка C. | |
106 Вывод содержит полноценное определение статического массива данных, имя которого | |
107 соответствует имени входного файла, если xxd не считывает данные из потока стандартного | |
108 ввода. | |
109 .TP | |
110 .IR "\-l длина " | " \-len длина" | |
111 Завершает работу после записи заданного в параметре | |
112 .RI < длина > | |
113 количества октетов. | |
114 .TP | |
115 .IR \-p " | " \-ps " | " \-postscript " | " \-plain | |
116 Использует непрерывный формат вывода шестнадцатеричного кода, | |
117 известный как "простой" стиль или стиль "postscript". | |
118 .TP | |
119 .IR \-r " | " \-revert | |
120 Изменяет смысл операции на противоположный: позволяет выполнять преобразование | |
121 шестнадцатеричного представления в бинарный код (или применять результат в качестве заплаты). | |
122 Если вывод происходит не в поток стандартного вывода, то xxd выполняет добавление кода | |
123 к соответствующему файлу. При использовании комбинации ключей | |
124 .I \-r \-p | |
125 происходит чтение "простого" шестнадцатеричного представления без использования | |
126 информации о номерах строк и какого-либо специального раскроя колонок. Пробелы | |
127 и символы новой строки могут встречаться в любом месте исходных данных. | |
128 .TP | |
129 .I \-seek смещение | |
130 При использовании после ключа | |
131 .I \-r | |
132 : добавлять указанное | |
133 .RI < смещение > | |
134 к файловым позициям, обнаруженным в исходных данных. | |
135 .TP | |
136 .I \-s [\+][\-]seek | |
137 Начинает работу с указанного абсолютного (или относительного) | |
138 .RI < смещения > | |
139 в байтах во входном_файле. | |
140 \fI\+ \fRуказывает, что смещение является относительным по отношению | |
141 к текущей файловой позиции в потоке стандартного ввода (бессмысленно, если чтение | |
142 происходит не из потока стандартного ввода). \fI\- \fRуказывает, что должно быть прочитано | |
143 указанное количество символов от конца ввода (либо, если сочетается с \fI \+ \fR: | |
144 перед текущей позиции файла в потоке стандартного ввода). | |
145 Если ключ \-s не используется, то xxd начинает работу от текущей позиции в файле. | |
146 .TP | |
147 .I \-u | |
148 Использует шестнадцатеричные цифры в верхнем регистре. По умолчанию используются цифры в | |
149 нижнем регистре символов. | |
150 .TP | |
151 .IR \-v " | " \-version | |
152 Отображает информацию о версии программы. | |
153 .SH ПОДВОДНЫЕ КАМНИ | |
154 .PP | |
155 .I xxd \-r | |
156 обладает встроенным интеллектом для распознавания информации о номерах строк. | |
157 Если возможен поиск по входному файлу, то номера строк в начале каждой строки | |
158 шестнадцатеричного представления могут быть неупорядоченными, некоторые строки могут | |
159 быть пропущены или пересекаться друг с другом. В этих случаях xxd использует | |
160 lseek(2) для перехода к следующей позиции. Если поиск по входному файлу | |
161 невозможен, то допустимы только пропуски строк, которые заполняются нулевыми | |
162 байтами. | |
163 .PP | |
164 .I xxd \-r | |
165 никогда не выводит сообщений об ошибках. Мусор пропускается молча. | |
166 .PP | |
167 При редактировании шестнадцатеричных представлений бинарных файлов обращайте | |
168 внимание, что | |
169 .I xxd \-r | |
170 пропускает в строке ввода любые данные после прочтения достаточного количества | |
171 колонок шестнадцатеричных данных (см. ключ \-c). Это означает, что изменения, | |
172 внесенные в колонки с печатными символами ascii (или ebcdic), всегда игнорируются. | |
173 При обратном преобразовании шестнадцатеричного представления в стиле | |
174 postscript с помощью команды xxd \-r \-p количество колонок не учитывается. | |
175 В этом случае распознаются все символы, которые похожи на пары шестнадцатеричных цифр. | |
176 .PP | |
177 Обратите внимание на различие между командами | |
178 .PP | |
179 \fI% xxd \-i файл\fR | |
180 .PP | |
181 и | |
182 .PP | |
183 \fI% xxd \-i \< файл\fR | |
184 .PP | |
185 Команда | |
186 .I xxd \-s \+seek | |
187 может отличаться от | |
188 .I xxd \-s seek, | |
189 поскольку для того, чтобы "отмотать" данные на входе назад, используется вызов lseek(2). | |
190 При использовании `+' поведение будет отличаться, если входные данные | |
191 поступают с потока стандартного ввода, а позиция в файле стандартного ввода не находится | |
192 в начале файла к тому моменту, когда программа xxd запущена и приступает к чтению ввода. | |
193 Нижеследующие примеры помогут прояснить (или ещё больше запутать!) ситуацию... | |
194 .PP | |
195 Отмотка назад потока стандартного ввода; необходимо, поскольку 'cat' уже выполнила | |
196 чтение до конца потока стандартного ввода: | |
197 .PP | |
198 \fI% sh \-c 'cat > plain_copy; xxd \-s 0 > hex_copy' < file | |
199 .PP | |
200 Вывод шестнадцатеричного представления от позиции в файле 0x480 | |
201 (= 1024+128). | |
202 Символ `+' означает "относительно текущей позиции", таким образом `128' добавляется | |
203 к первому килобайту, где завершает работу dd: | |
204 .PP | |
205 \fI% sh \-c 'dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet' < file | |
206 .PP | |
207 Вывод шестнадцатеричного представления от позиции в файле 0x100 | |
208 (= 1024-768): | |
209 .PP | |
210 \fI% sh \-c 'dd of=plain_snippet bs=1k count=1; xxd \-s +-768 > hex_snippet' < file | |
211 .PP | |
212 В то же время, следует заметить, что подобные ситуации встречаются довольно редко, | |
213 так что символ `+' обычно не используется. Автор предпочитает наблюдать за работой | |
214 xxd с помощью strace(1) или truss(1) в тех случаях, когда применяется ключ | |
215 \-s. | |
216 .SH ПРИМЕРЫ | |
217 .PP | |
218 .br | |
219 Вывести всё, кроме первых трёх строк (0x30 байтов) файла | |
220 .B file | |
221 : | |
222 .PP | |
223 \fI% xxd \-s 0x30 file | |
224 .PP | |
225 .br | |
226 Вывести три строки (0x30 байтов) от конца файла | |
227 .B file | |
228 : | |
229 .PP | |
230 \fI% xxd \-s \-0x30 file | |
231 .PP | |
232 .br | |
233 Вывести 120 байтов в виде непрерывного шестнадцатеричного представления | |
1125 | 234 по 20 октетов в строке: |
221 | 235 .PP |
236 \fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR | |
237 .br | |
238 2e544820585844203120224d616e75616c207061 | |
239 .br | |
240 676520666f7220787864220a2e5c220a2e5c2220 | |
241 .br | |
242 32317374204d617920313939360a2e5c22204d61 | |
243 .br | |
244 6e207061676520617574686f723a0a2e5c222020 | |
245 .br | |
246 2020546f6e79204e7567656e74203c746f6e7940 | |
247 .br | |
248 7363746e7567656e2e7070702e67752e6564752e | |
249 .br | |
250 .PP | |
251 .br | |
252 Вывести первые 120 байтов этой страницы справочника по 12 октетов в строке: | |
253 .PP | |
254 \fI% xxd \-l 120 \-c 12 xxd.1\fR | |
255 .br | |
256 0000000: 2e54 4820 5858 4420 3120 224d .TH XXD 1 "M | |
257 .br | |
258 000000c: 616e 7561 6c20 7061 6765 2066 anual page f | |
259 .br | |
260 0000018: 6f72 2078 7864 220a 2e5c 220a or xxd"..\\". | |
261 .br | |
262 0000024: 2e5c 2220 3231 7374 204d 6179 .\\" 21st May | |
263 .br | |
264 0000030: 2031 3939 360a 2e5c 2220 4d61 1996..\\" Ma | |
265 .br | |
266 000003c: 6e20 7061 6765 2061 7574 686f n page autho | |
267 .br | |
268 0000048: 723a 0a2e 5c22 2020 2020 546f r:..\\" To | |
269 .br | |
270 0000054: 6e79 204e 7567 656e 7420 3c74 ny Nugent <t | |
271 .br | |
272 0000060: 6f6e 7940 7363 746e 7567 656e ony@sctnugen | |
273 .br | |
274 000006c: 2e70 7070 2e67 752e 6564 752e .ppp.gu.edu. | |
275 .PP | |
276 .br | |
277 Показать дату из файла xxd.1: | |
278 .PP | |
279 \fI% xxd \-s 0x28 \-l 12 \-c 12 xxd.1\fR | |
280 .br | |
281 0000028: 3231 7374 204d 6179 2031 3939 21st May 199 | |
282 .PP | |
283 .br | |
284 Скопировать | |
285 .B входной_файл | |
286 в | |
287 .B выходной_файл | |
288 с добавлением 100 байтов со значением 0x00 в начало файла: | |
289 .PP | |
290 \fI% xxd входной_файл | xxd \-r \-s 100 \> выходной_файл\fR | |
291 .br | |
292 .PP | |
293 .br | |
294 Заменить дату в файле xxd.1: | |
295 .PP | |
296 \fI% echo '0000029: 3574 68' | xxd \-r \- xxd.1\fR | |
297 .br | |
298 \fI% xxd \-s 0x28 \-l 12 \-c 12 xxd.1\fR | |
299 .br | |
300 0000028: 3235 7468 204d 6179 2031 3939 25th May 199 | |
301 .PP | |
302 .br | |
303 Создать 65537-байтный файл, все байты которого имеют значение | |
304 0x00, кроме последнего байта, который должен иметь значение 'A' | |
305 (0x41): | |
306 .PP | |
307 \fI% echo '010000: 41' | xxd \-r \> file\fR | |
308 .PP | |
309 .br | |
310 Создать шестнадцатеричное представление этого файла с | |
311 использованием автоматического пропуска: | |
312 .PP | |
313 \fI% xxd \-a \-c 12 file\fR | |
314 .br | |
315 0000000: 0000 0000 0000 0000 0000 0000 ............ | |
316 .br | |
317 * | |
318 .br | |
319 000fffc: 0000 0000 40 ....A | |
320 .PP | |
321 Создать 1-байтный файл, содержащий символ 'A'. | |
322 Число после '\-r \-s' добавляется к номерам строк, найденным в файле; | |
323 иначе говоря, предшествующие байты пропускаются: | |
324 .PP | |
325 \fI% echo '010000: 41' | xxd \-r \-s \-0x10000 \> file\fR | |
326 .PP | |
327 xxd можно использовать в качестве фильтра в редакторе, например в | |
328 .B vim(1), | |
329 чтобы создать шестнадцатеричное представление области между | |
330 отметками `a' и `z': | |
331 .PP | |
332 \fI:'a,'z!xxd\fR | |
333 .PP | |
334 Вы можете использовать xxd в качестве фильтра в редакторе, например в | |
335 .B vim(1), | |
336 для восстановления данных из шестнадцатеричного представления | |
337 между отметками `a' и `z': | |
338 .PP | |
339 \fI:'a,'z!xxd \-r\fR | |
340 .PP | |
341 Вы можете использовать xxd в качестве фильтра в редакторе, например в | |
342 .B vim(1), | |
343 для восстановления данных из единственной строки | |
344 шестнадцатеричного представления. Поместите курсор в соответствующую строку | |
345 и наберите | |
346 .PP | |
347 \fI!!xxd \-r\fR | |
348 .PP | |
349 Чтобы прочитать единственный символ из канала связи: | |
350 .PP | |
351 \fI% xxd \-c1 < /dev/term/b &\fR | |
352 .br | |
353 \fI% stty < /dev/term/b \-echo \-opost \-isig \-icanon min 1\fR | |
354 .br | |
355 \fI% echo \-n foo > /dev/term/b\fR | |
356 .PP | |
357 .SH ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ | |
358 Программа xxd завершает работу со следующими значениями: | |
359 .TP | |
360 0 | |
361 Ошибки не обнаружены. | |
362 .TP | |
363 \-1 | |
364 Операция не поддерживается (выполнение | |
365 .I xxd \-r \-i | |
366 пока невозможно). | |
367 .TP | |
368 1 | |
369 Ошибка при разборе ключей командной строки. | |
370 .TP | |
371 2 | |
372 Проблемы во входном файле. | |
373 .TP | |
374 3 | |
375 Проблемы в выходном файле. | |
376 .TP | |
377 4,5 | |
378 Желательная позиция поиска недостижима. | |
379 .SH СМОТРИ ТАКЖЕ | |
380 uuencode(1), uudecode(1), patch(1) | |
381 .br | |
382 .SH ПРЕДУПРЕЖДЕНИЕ | |
383 Странность этой программы соответствует особенностям мозга её создателя. | |
384 Используйте её на свой страх и риск. Копируйте файлы, отслеживайте | |
385 вызовы, становитесь волшебником. | |
386 .br | |
387 .SH ВЕРСИЯ | |
388 Эта страница справочника документирует xxd версии 1.7. | |
389 .SH АВТОР | |
390 .br | |
391 (c) 1990-1997 Юрген Вайгерт (Juergen Weigert) | |
392 .br | |
393 <jnweiger@informatik.uni-erlangen.de> | |
394 .LP | |
395 Вы можете свободно распространять программу со ссылкой на меня. | |
396 .br | |
397 Если использование этой программы принесло вам какой-то доход, | |
398 поделитесь со мной. | |
399 .br | |
400 Если вы потеряли деньги, то я тут не причём. | |
401 .PP | |
402 Первый вариант страницы справочника написан Тони Наджентом (Tony Nugent) | |
403 .br | |
404 <tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au> | |
405 .br | |
406 Небольшие изменения внесены Брамом Мооленааром (Bram Moolenaar). | |
407 Страница отредактирована Юргеном Вайгертом (Juergen Weigert). | |
408 .PP |