리눅스 명령어 · 1 min read · Sep 18, 2025

리눅스 unexpand 명령어 초보자를 위한 설명 (예제 포함)

리눅스 명령줄에서 작업하려면 반복적인 작업을 신속하게 수행하는 방법을 배워야 합니다. 당신이 언젠가는 마주하게 될 작업 중 하나는 공백을 탭으로 또는 그 반대로 변환하는 것입니다. 이 튜토리얼에서는 이러한 상황에서 큰 도움이 될 unexpand라는 명령줄 유틸리티에 대해 논의할 것입니다.

하지만 시작하기 전에, 이 기사에 있는 모든 예제가 Ubuntu 16.04 LTS 머신에서 테스트되었다는 점을 언급할 가치가 있습니다.

리눅스 unexpand 명령어

unexpand 명령어는 공백을 탭으로 변환할 수 있게 해줍니다. 다음은 그 구문입니다:

unexpand [OPTION]... [FILE]...

그리고 man 페이지에서 이렇게 설명합니다:

각 FILE의 공백을 탭으로 변환하여 표준 출력에 씁니다. FILE이 없거나 FILE이 -일 경우, 표준 입력을 읽습니다.

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

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

탭이 포함된 텍스트 파일이 있다고 가정해 보겠습니다. 이제 어떤 이유로든 expand 명령어를 사용하여 그 탭을 공백으로 변환했으며, 다시 공백을 탭으로 변환하고 싶다면, 이 경우 unexpand 명령어를 사용할 수 있습니다.

예를 들어:

unexpand file1

이 도구는 stdout에 변환된 출력을 생성합니다. 따라서 이를 저장하려면 다른 파일로 리디렉션할 수 있습니다. 예를 들어:

unexpand file1 > file2

기본적으로 이 도구는 초기 공백에서만 작동한다는 점을 언급할 가치가 있습니다. -a 옵션을 사용하여 모든 공백/빈 공간을 탭으로 변환하고 싶다는 것을 유틸리티에 알릴 수 있습니다.

Q2. unexpand가 초기/선행 공백만 변환하도록 강제하는 방법은?

이 도구는 초기 공백이나 공간만 변환하도록 강제하는 옵션을 제공합니다(심지어 -a 옵션이 있을 경우에도). 해당 옵션은 –first-only입니다.

unexpand --first-only -a file1 > file2

Q3. -t 옵션은 무엇을 하나요?

-t 옵션은 여러 역할을 합니다. 단일 숫자 또는 쉼표로 구분된 숫자 목록을 허용합니다. 단일 숫자(예: ‘n’)를 전달하면 unexpand 명령어는 파일의 공백을 매 ‘n’ 위치마다 탭으로 압축합니다.

예를 들어, 도구가 매 3 위치마다 공백을 탭으로 압축하도록 하려면 다음과 같이 이 옵션을 사용하세요:

unexpand -t 3 file1 > file2

반면, 이 옵션에 쉼표로 구분된 숫자 목록이 주어지면, 도구는 해당 특정 위치에 탭 정지를 배치합니다.

unexpand -t 1,2,3 file1 > file2

Q4. unexpand가 STDIN에서 입력을 읽도록 만드는 방법은?

이것은 매우 쉽습니다 - 파일 이름 없이 명령어를 실행하면 됩니다(완료되었음을 알리려면 ctrl+D를 사용하세요).

제가 말하는 것은 다음과 같습니다:

unexpand

결론

당신이 하는 작업의 종류에 따라 unexpand 명령어는 큰 도움이 될 수 있습니다. 이 튜토리얼에서는 이 도구가 제공하는 대부분의 명령줄 옵션에 대해 논의했습니다. 더 알고 싶다면, man 페이지로 가세요.

Share: X/Twitter LinkedIn

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

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