탭(TAB)문자를 스페이스(SPACE) 처리하는 expand 개론과 실무활용
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 3,112 조회
- 0 추천
- 목록
본문
탭(TAB)문자를 스페이스(SPACE) 처리하는 expand 개론과 실무활용
expand는 각 파일 내에 있는 탭(TAB)을 스페이스로 처리하여 표준출력으로 출력하는 명령어입니다.
만약 입력되는 파일이 없거나 - 으로 지정된다면 표준입력에서 받아들여서 처리합니다.
TAB문자대신 기본 8자리의 공백문자로 대체되지만 TAB문자대신 대체할 공백문자의 자릿수를 지정할 수도 있습니다.
즉, -t옵션으로 공백문자의 자릿수를 지정하면 TAB문자 대신 지정한 자릿수만큼의 공백문자로 대체됩니다.
그리고 expand명령어는 공백문자를 탭(TAB)으로 대체하는 unexpand명령어와는 정반대의 명령어라고 할 수 있습니다.
명령어위치 : /usr/bin/expand
사용형식 : expand [옵션]... [파일]...
먼저, expand명령어의 실제 예에 대한 설명을 하기 위하여 tabfile이라는 파일을 사용하도록 하겠습니다.
아래 cat명령어로 확인한 tabfile에서 출력된 각 열들은 모두 TAB문자로 띄워져 있습니다.
[root@su250 log]# cat tabfile gdm: x: 42: canna: x: 39: wnn: x: 49: fax: x: 78: netdump: x: 34: nut: x: 57: ldap: x: 55: [root@su250 log]# |
TAB문자로 각각의 열들이 구분되어 있는 tabfile을 아래와 같이 “cat tabfile | expand” 라는 명령어를 실행하면 TAB문자들이 모두 스페이스(공백 8자리)문자로 바뀌게 됩니다.
아래의 결과에서는 확인하기 어렵지만 실제 TAB문자는 모두 공백문자로 처리 되었습니다.
[root@su250 log]# cat tabfile | expand gdm: x: 42: canna: x: 39: wnn: x: 49: fax: x: 78: netdump: x: 34: nut: x: 57: ldap: x: 55: [root@su250 log]# |
그리고 아래는 expand명령어에 -i옵션을 사용한 것으로서 -i옵션은 각 행의 시작부분의 탭(TAB)부분만을 스페이스로 처리하는 옵션입니다.
[root@su250 log]# cat tabfile | expand -i gdm: x: 42: canna: x: 39: wnn: x: 49: fax: x: 78: netdump: x: 34: nut: x: 57: ldap: x: 55: [root@su250 log]# |
그리고 이번에는 TAB문자를 공백으로 처리할 때에 TAB문자대신 사용할 공백문자의 개수를 지정하는 예입니다.
즉, 공백문자의 개수를 지정하지 않는다면 기본 8자리로 대체될 것입니다.
하지만 아래 예와 같이 -t옵션으로 TAB문자대신 대체될 공백문자의 개수를 지정하면 그 공백문자의 개수로 대체됨을 알 수 있습니다.
아래의 예는 TAB문자 대신 10자리의 공백문자로 대체한 예입니다.
[root@su250 log]# cat tabfile | expand -t 10 gdm: x: 42: canna: x: 39: wnn: x: 49: fax: x: 78: netdump: x: 34: nut: x: 57: ldap: x: 55: [root@su250 log]# |
위의 결과를 보시면 각 행의 TAB문자들이 10자리의 공백으로 띄워진 것을 알 수 있습니다.
그리고 아래에서는 TAB문자 대신 30자리의 공백문자로 대체한 예입니다.
[root@su250 log]# cat tabfile | expand -t 30 gdm: x: 42: canna: x: 39: wnn: x: 49: fax: x: 78: netdump: x: 34: nut: x: 57: ldap: x: 55: [root@su250 log]# |
위의 결과를 보시면 각 행의 TAB문자들이 30자리의 공백으로 띄워진 것을 알 수 있습니다.
관련자료
-
이전
-
다음