HEXDUMP(1) | General Commands Manual | HEXDUMP(1) |
NAME¶
hexdump
— ascii,
decimal, hexadecimal, octal dump
사용법¶
hexdump
[-bcdovx
]
[-e
format_string]
[-f
format_file]
[-n
length]
[-s
skip]
file ...
설명¶
풀그림은 지정한 파일, 또는 표준 입력으로 부터 입력된 것을 사용자가 지정한 형식으로 보여주는 연장틀이다.
사용할 수 있는 옵션은 다음과 같다:
-b
- 8진수 1 바이트씩 보기. 입력된 파일의 내용을 세자리 씩 한줄에 16개로 나누워 8진수로 보여준다.
-c
- 캐릭터 1 바이트씩 보기. 입력된 파일의 내용을 세자리 씩 한줄에 16개로 나누워 문자형식으로 보여준다. 문자형식이 아닌 문자는 세자리 8진수로 보여준다.
-d
- 10진수 2 바이트씩 보기. 입력된 파일의 내용을 다섯자리 씩 한줄에 8개로 나누워 10진수로 보여준다.
-e
format_string- 보여줄 형식을 format_string 형식으로 지정한다.
-f
format_file- 보여줄 형식이 하나 또는 그 이상의 줄로 나뉘어진 파일을 지정한다. 비여있는 줄, # 글자로 시작하는 줄은 무시된다.
-n
length- 입력된 파일의 length 바이트만 보여준다.
-o
- 8진수 2 바이트씩 보기. 입력된 파일의 내용을 여섯자리 씩 한줄에 8개로 나누워 8진수로 보여준다.
-s
offset- 입력 파일의 처음부터
offset 파이트를
통과하고 보여준다.
offset 사용할
숫자는 초기값으로
10진수 이며,
0x
나0X
로 시작하는 숫자는 16진수로 처리한다.0
으로 시작하는 숫자는 8진수. 또한 숫자 끝에b
,k
,m
문자가 올 수 있는데, 이것은 각각512
,1024
,1048576
바이트를 의미한다. -v
- 이 옵션은 모든 입력 자료를 보여준다. Without the -v option, any number of groups of output lines, which would be identical to the immediately preceding group of output lines (except for the input offsets), are replaced with a line comprised of a single asterisk.
-x
- 16진수 2바이트씩 보기. 입력된 파일의 내용을 4자리씩 한줄에 8개로 나누워 보여준다.
각 입력 파일을
위해, hexdump
명령은
각각 표준 출력으로
연속적으로 복사한다.
그리고, -e
또는
-f
옵션이
사용되고 있으면,
지정한 출력 양식에
따라 입력되는 자료를
변환한다.
Formats¶
포멧 문자열은 공백문자로 구분되는 여러개의 포멧 유닛을 가진다. 하나의 포멧 유닛은 세 부분으로 구성된다. 반복횟수, 바이트 횟수, 포멧 형식이다.
반복횟수는 선택적인 양수 정수이며, 초기값은 1이다. 각각의 포멧은 이 횟수만큼 적용된다.
바이트 횟수는 선택적인 양수 정수이며, 이 값이 정해지면, 이 바이트 만큼 변화하면, 반복횟수를 읽어 또 이 바이트만큼 변환한다.
반복횟수와 바이트 횟수가 둘다 사용되면, 슬래쉬(/)로 구분한다. 슬래쉬 앞뒤의 어떠한 공백문자도 모두 무시된다.
포멧은 따움표(" ")로 묶겨져야 한다. 포멧은 fprintf 함수( fprintf(3)) 에서 사용하는 것과 비슷하다.
- * 기호는 필드 넓이나, 정밀도로 사용되지 않을 수도 있다.
- 바이트 카운트나 필드 정밀도 지정에서는 ``s'' 변환문자가 필요하다. (이것은 fprintf(3) 함수의 사용법과 다르다.)
- ``h'', ``l'', ``n'', ``p'', ``q'' 변환 문자는 지원되지 않는다.
- 다음은 C 표준에서
지원하는 \
문자들이다.
NUL \0 <alert character> \a <backspace> \b <form-feed> \f <newline> \n <carriage return> \r <tab> \t <vertical tab> \v
Hexdump에서는 부가적으로 다음 변환 문자들도 지원한다.
_a
[dox
]- Display the input offset, cumulative across input files, of the next byte
to be displayed. The appended characters
d
,o
, andx
specify the display base as decimal, octal or hexadecimal respectively. _A
[dox
]- Identical to the
_a
conversion string except that it is only performed once, when all of the input data has been processed. _c
- Output characters in the default character set. Nonprinting characters are displayed in three character, zero-padded octal, except for those representable by standard escape notation (see above), which are displayed as two character strings.
_p
- Output characters in the default character set. Nonprinting characters are
displayed as a single “
.
”. _u
- Output US ASCII characters, with the exception that control characters are
displayed using the following, lower-case, names. Characters greater than
0xff, hexadecimal, are displayed as hexadecimal strings.
000 nul 001\soh 0022stx 003 etx 004 eot 005enq 006 ack 007\bel 0088bs 009 ht 00A lf 00Bvt 00C ff 00D\cr 00E 00F si 010 dle 011dc1 012 dc2 013\dc3 0144dc4 0151nak 016 syn 017etb 018 can 019\em 01Ac 01C fs 01Dgs 01E rs 01F\us 0FFel
The default and supported byte counts for the conversion characters are as follows:
The amount of data interpreted by each format string is the sum of the data required by each format unit, which is the iteration count times the byte count, or the iteration count times the number of bytes required by the format if the byte count is not specified.
The input is manipulated in ``blocks'', where a block is defined as the largest amount of data specified by any format string. Format strings interpreting less than an input block's worth of data, whose last format unit both interprets some number of bytes and does not have a specified iteration count, have the iteration count incremented until the entire input block has been processed or there is not enough data remaining in the block to satisfy the format string.
If, either as a result of user specification or hexdump modifying the iteration count as described above, an iteration count is greater than one, no trailing whitespace characters are output during the last iteration.
It is an error to specify a byte count as well as multiple
conversion characters or strings unless all but one of the conversion
characters or strings is _a
or
_A
.
If, as a result of the specification of the
-n
option or end-of-file being reached, input data
only partially satisfies a format string, the input block is zero-padded
sufficiently to display all available data (i.e. any format units
overlapping the end of data will display some number of the zero bytes).
Further output by such format strings is replaced by an equivalent
number of spaces. An equivalent number of spaces is defined as the number of
spaces output by an s
conversion character with the
same field width and precision as the original conversion character or
conversion string but with any “+
”,
“ ”, “#
”
conversion flag characters removed, and referencing a NULL string.
If no format strings are specified, the default display is
equivalent to specifying the -x
option.
hexdump
exits 0 on success and >0 if an
error occurred.
EXAMPLES¶
Display the input in perusal format:
"%06.6_ao " 12/1 "%3_u " "\t\t" "%_p " "\n"
Implement the -x option:
"%07.7_Ax\n" "%07.7_ax " 8/2 "%04x " "\n"
관련 항목¶
April 18, 1994 | Linux 5.14.0-427.18.1.el9_4.x86_64 |