> 텍스트 처리 및 검색 > hexdump

hexdump: 파일의 16진수 덤프 출력

hexdump 명령어는 파일의 내용을 16진수(hexadecimal) 형식으로 출력하는 도구입니다. 바이너리 파일의 구조를 분석하거나, 텍스트 파일의 보이지 않는 특수 문자(줄바꿈, 탭 등)를 확인할 때 유용합니다.

개요

hexdump는 파일의 내용을 8비트 바이트 단위로 읽어 16진수 형식으로 변환하여 출력합니다. 이 명령어는 특히 실행 파일, 이미지, 오디오 파일과 같은 바이너리 파일의 내용을 시각적으로 분석할 때 사용됩니다. 일반적인 텍스트 편집기로 열면 깨져 보이는 내용도 hexdump를 사용하면 오프셋(위치), 16진수 값, 그리고 가능한 경우 ASCII 문자열까지 함께 볼 수 있어 파일의 구조를 파악하는 데 큰 도움이 됩니다.

주요 특징

hexdump 명령어의 주요 특징은 다음과 같습니다.

  • 파일의 내용을 16진수, 8진수, 10진수 등 다양한 형식으로 출력합니다.
  • 바이너리 파일의 내용을 분석하는 데 적합합니다.
  • 출력 형식을 지정하여 원하는 형태로 결과를 볼 수 있습니다.
  • 파이프(`|`)와 함께 사용하여 다른 명령어의 출력 결과를 분석할 수 있습니다.

출력 형식

hexdump의 출력은 일반적으로 세 부분으로 구성됩니다.

  • 오프셋(Offset): 파일의 시작부터 현재 위치까지의 바이트 수를 나타냅니다. 기본적으로 16진수 형식으로 출력됩니다.
  • 바이트 데이터: 파일 내용의 실제 바이트 값을 16진수 형식으로 보여줍니다.
  • ASCII 문자열: 바이트 데이터를 사람이 읽을 수 있는 ASCII 문자로 변환하여 보여줍니다. 인쇄 가능한 문자가 아닐 경우 점(.)으로 표시됩니다.

주요 옵션

자주 사용하는 hexdump 명령어의 옵션을 목적에 따라 그룹화했습니다.

1) 출력 옵션

2) 도움말

생성된 명령어:

명령어를 조합해 보세요.

설명:

`hexdump` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

사용 예시

hexdump 명령어의 다양한 사용 예시를 통해 기능을 익혀보세요.

파일 내용 정규 형식으로 출력

hexdump -C /bin/cat | head

가장 흔하게 사용되는 형식으로, `/bin/cat` 파일의 시작 부분을 정규 형식으로 출력합니다.

파일의 특정 위치부터 출력

hexdump -C -s 0x20 -n 32 hexdump.test

`hexdump.test` 파일의 16진수 오프셋 `0x20`부터 `32`바이트만큼의 내용을 출력합니다.

특수 문자 확인

echo 'Hello\nWorld' | hexdump -C

줄바꿈(`\n`) 문자가 포함된 텍스트 파일의 내용을 16진수로 확인합니다. `0a`는 줄바꿈 문자의 16진수 값입니다.

파이프(|)와 함께 사용

strings /bin/cat | hexdump -C

`strings` 명령의 출력 결과를 `hexdump`로 파이핑하여, 추출된 문자열의 16진수 값을 분석합니다.

팁 & 주의사항

hexdump 명령어 사용 시 유의할 점들을 정리했습니다.

  • `hexdump`는 바이너리 파일을 다룰 때 매우 강력한 도구입니다. 파일의 헤더나 특정 바이트 값을 확인하여 파일의 유형을 추정할 수 있습니다.
  • 바이너리 파일 전체를 출력하면 터미널이 멈출 수 있으므로, `-n` 옵션이나 `head` 명령을 함께 사용하는 것이 좋습니다.
  • `od`(`octal dump`) 명령은 `hexdump`와 유사하며, 기본적으로 8진수 형식으로 출력합니다.

관련 명령어

기능적으로 유사하거나 함께 자주쓰이는 명령어들입니다.


동일 카테고리 명령어