od는 유닉스 계열 운영체제에서 제공되는 표준 명령어 중 하나로, 파일이나 표준 입력 스트림의 내용을 8진수(octal), 16진수(hexadecimal), 문자, 혹은 기타 지정된 형식으로 변환하여 출력한다. 이 명령은 주로 바이너리 파일의 내용을 사람 눈에 읽히는 형태로 확인하거나, 데이터의 구조를 분석할 때 사용된다.
기능 및 주요 옵션
- 기본 동작: 지정된 파일(또는 표준 입력)의 바이트를 8진수 형식으로 출력한다.
- -t 옵션: 출력 형식을 지정한다. 예를 들어
-t x1은 1바이트씩 16진수로,-t c는 문자 형태로 표시한다. - -A 옵션: 주소 표시 방식을 설정한다.
-A x는 16진수 주소,-A d는 10진수 주소를 사용한다. - -j, -N 옵션: 파일의 특정 오프셋부터 읽기 시작하거나, 읽을 바이트 수를 제한한다.
역사 및 배경
od는 초기 유닉스 시스템에 포함된 유틸리티로, 첫 번째 버전은 AT&T UNIX Version 7(1979) 등에 수록되어 있다. POSIX 표준(IEEE 1003.1)에서도 정의되어 있어, 현대의 대부분 UNIX, Linux, macOS, BSD 계열 시스템에서 동일한 동작을 기대할 수 있다.
사용 예시
# sample.bin 파일을 16진수와 문자 형식으로 표시
od -t x1 -t c sample.bin
# 표준 입력을 8진수로 출력
cat file.bin | od
어원
명령어 이름 “od”는 “octal dump”(옥탈 덤프)의 약어로, 원래는 파일 내용을 8진수 형태로 “덤프(dump)”한다는 의미에서 명명되었다.
참고 사항
- od는 텍스트 파일보다 바이너리 파일을 다룰 때 유용하다.
- 출력 형식이 복잡할 경우,
hexdump,xxd등 다른 바이너리 뷰어와 조합해 사용할 수 있다.
위 내용은 유닉스 및 POSIX 문서에 기반한 객관적인 정보이며, 현재 널리 이용되는 표준 유틸리티임을 확인할 수 있다.