Linux 명령어 · 2 min read · Sep 19, 2025

초보자를 위한 Linux strings 명령어 튜토리얼 (5가지 예제)

이진/실행 파일을 살펴보아 사람이 읽을 수 있는 문자열을 가져오는 작업은 모든 사람이 하는 일이 아니지만, 만약 당신이 이를 요청받는다면 어떻게 할까요? 파일을 편집기로 열고 수동으로 내용을 찾는 것은 우아한 해결책이 아닙니다. 그렇다면 어떻게 해야 할까요? 맞습니다, 당신이 맞혔습니다 - 이를 대신해주는 명령줄 유틸리티가 존재합니다.

문제의 도구는 Strings라고 불리며, 이 튜토리얼에서는 이해하기 쉬운 몇 가지 예제를 사용하여 이 명령어의 기본을 논의할 것입니다. 하지만 그 전에, 이 기사에 있는 모든 예제는 Ubuntu 16.04 LTS 머신에서 테스트되었다는 점을 언급할 가치가 있습니다.

Linux Strings 명령어

Strings 명령어는 기본적으로 파일에서 인쇄 가능한 문자로 이루어진 문자열을 출력합니다. 다음은 그 구문입니다:

strings [OPTIONS] FILENAME

그리고 이 도구의 매뉴얼 페이지는 다음과 같이 설명합니다:

       주어진 각 파일에 대해, GNU strings는 최소 4자 이상(또는 아래 옵션으로 주어진 숫자)의 인쇄 가능한 문자 시퀀스를 출력하며, 그 뒤에는 인쇄할 수 없는 문자가 옵니다.

       strings 프로그램이 구성된 방식에 따라, 각 파일에서 찾을 수 있는 모든 인쇄 가능한 시퀀스를 표시하거나, 로드 가능한 초기화된 데이터 섹션에 있는 시퀀스만 표시하는 기본값을 가집니다. 파일 유형이 인식할 수 없거나 strings가 stdin에서 읽고 있다면, 항상 찾을 수 있는 모든 인쇄 가능한 시퀀스를 표시합니다.

       하위 호환성을 위해, -d 옵션의 존재와 관계없이 명령줄 옵션 - 다음에 오는 모든 파일도 전체적으로 스캔됩니다.

       strings는 비텍스트 파일의 내용을 결정하는 데 주로 유용합니다.

다음은 Strings 명령어가 어떻게 작동하는지에 대한 좋은 아이디어를 제공할 몇 가지 Q&A 스타일의 예제입니다.

Q1. strings 명령어를 사용하는 방법은?

기본 사용법은 매우 간단합니다 - 파일 이름을 입력으로 전달하고 명령어를 실행하면 됩니다.

Strings는 주로 이진/실행 파일에서 정보를 추출하는 데 사용되므로, 모든 예제에서 그런 파일을 사용할 것입니다.

예를 들어:

strings test

이 명령어가 내 시스템에서 생성한 출력은 다음과 같습니다:

strings 명령어 사용 방법

Q2. 사용자 정의 문자 제한을 강제하는 방법은?

앞서 설명한 바와 같이, Strings 도구의 기본 동작은 최소 4자 이상의 문자 시퀀스만 출력하는 것입니다. 그러나 원하신다면, -n 명령줄 옵션을 사용하여 이 제한을 변경할 수 있습니다(새 제한을 나타내는 숫자를 전달해야 합니다).

예를 들어, 제한을 2로 설정하고 싶다면, 다음과 같이 할 수 있습니다:

strings -n 2 test

이제 출력에서 두 문자 및 세 문자 문자열도 볼 수 있습니다.

Q3. strings가 문자 시퀀스의 오프셋을 출력하도록 만드는 방법은?

Strings가 출력에서 표시하는 문자 시퀀스의 오프셋도 표시하도록 하려면, -t 명령줄 옵션을 사용하여 오프셋의 진수를 지정하는 단일 문자 입력을 제공해야 합니다 - ‘o’는 8진수, ‘x’는 16진수, 또는 ‘d’는 10진수입니다.

예를 들어:

strings -t d test

그리고 이 명령어가 내 시스템에서 생성한 출력은 다음과 같습니다:

문자 시퀀스의 오프셋을 출력하도록 strings 만들기

이제 출력의 문자열 앞에 해당 오프셋이 표시되는 것을 볼 수 있습니다.

Q4. Strings가 전체 파일을 스캔하도록 만드는 방법은?

Strings가 구성된 방식에 따라 전체 입력 파일을 스캔할 수도 있고 그렇지 않을 수도 있습니다. 그러나 도구가 전체 파일을 읽도록 확실히 하고 싶다면(- 로드 가능한 초기화된 데이터 섹션만이 아니라), -a 명령줄 옵션을 사용하십시오.

예를 들어:

strings -a test

반대로, Strings가 파일의 초기화된 로드된 데이터 섹션에서만 문자열을 표시하도록 하려면, -d 명령줄 옵션을 사용하십시오.

strings -d test

Q5. 구분자를 변경하는 방법은?

기본적으로 Strings에서 사용하는 구분자는 줄 바꿈입니다. 그러나 원하신다면, -s 명령줄 옵션을 사용하여 사용자 정의 구분자를 사용할 수 있습니다.

예를 들어:

strings -s [[[]]] test

구분자 변경하기

결론

Strings 명령어는 유용한 정보를 위해 이진/실행 파일을 파고드는 데 매우 유용한 도구입니다. 여기에서 몇 가지 중요한 명령줄 옵션을 논의했습니다. 그러니 연습해 보시고, 완료되면 도구의 매뉴얼 페이지로 가서 더 많은 정보를 확인하세요.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.