Описание тега aws
Как другие указали, это потому, что вывести -х
обрабатывает файлы, содержащие 2-байтных слов. На прямой порядок байтов системы (почти все компьютеры), это означает, что байты будут заменены, прежде чем они отображаются. Это означает, что байт значения печатаются в пары и что байты меняются местами. Поскольку у вас есть нечетное число байтов, вывести
только добавляет ноль, чтобы сделать окончательные пары. С нуля заново с 0а
. Это документированное поведение для шестнадцатеричного представления
, так это не вру!
С помощью шестнадцатеричного представления -С
лучше команду, чтобы получить отформатированный вывод, который показывает байты в том порядке, как они находятся в файле. Также 0а
новая линия и, вероятно, добавил тихо, что создан файл (ВИМ
делает это по умолчанию). Например, Эхо
будет всегда добавить новую строку, если вы не говорите это не. В Баш
:
Эхе -е '\xcf по x9e\' | шестнадцатеричного представления -с
даст тот же результат, но подавляя новой строки с -н
будет давать то, что вы ожидали:
Эхо-СВ '\xcf по x9e\' | шестнадцатеричного представления -с
Чтобы остановить ВИМ
от добавления новой строки:
:набор noeol
:набор двоичных