>  기사  >  운영 및 유지보수  >  Linux 시스템에서 tr 명령에 대한 자세한 설명

Linux 시스템에서 tr 명령에 대한 자세한 설명

齐天大圣
齐天大圣원래의
2020-11-05 16:48:152960검색

오늘은 매우 자주 사용되는 명령어인 tr을 소개하겠습니다. 이 명령은 문자열 바꾸기, 지정된 문자 삭제, 여러 반복 문자를 하나로 압축하는 데 사용할 수 있습니다. 또한 이 명령은 파이프를 지원합니다. 위의 기능 소개에서 이 명령이 매우 강력하다는 것을 느낄 수 있을 것입니다.

이제 다음 명령을 소개하겠습니다.

tr [选项] 参数

일반적으로 사용되는 옵션은 다음과 같습니다.

  • -c 뒤에 문자 범위가 옵니다. 이는 해당 문자 이외의 문자를 나타냅니다.

  • -d는 지정된 문자를 삭제합니다.

  • -s는 반복되는 문자를 하나로 압축합니다.

여러 경우를 통해 이 명령의 사용법을 알아봅니다.

문자열 교체

가장 기본적인 기능은 옵션이 추가되지 않은 경우 문자열 교체를 의미합니다. 명령 형식은 다음과 같습니다.

tr 原字符串 需替换成的字符串

여기서 연속을 의미하는 - 기호도 자주 사용합니다. 사례를 살펴보겠습니다.

# 字符串替换,将小写字母替换为大写字母
# echo hello,world | tr [a-z] [A-Z]
HELLO,WORLD

문자 삭제

지정된 문자를 삭제하려면 -d 옵션을 사용하고, 지정된 문자를 유지하려면 -d -c 옵션을 사용합니다. 사례를 살펴보겠습니다.

# 删除指定字符ae
# echo 'There are apples' | tr -d 'ae'
Thr r ppls

# 删除指定字符,只保留数字和字母及换行符,其他的字符全部删除
# echo 'sSwd,aw23e;sw aswe' | tr -d -c 'a-zA-Z0-9\n'
sSwdaw23eswaswe

문자 압축

이 기능은 매우 일반적으로 사용됩니다. 연속해서 반복되는 문자를 하나로 압축할 수 있습니다. 우리는 연속된 공백을 제거하고 공백 하나만 남기고, 연속된 줄 바꿈을 제거하고 개행 하나만 남기는 데 자주 사용합니다. 문자 압축 기능을 완료하려면 -s 옵션을 사용해야 합니다.

# 删除连续的空格只留下一个(我们也经常删除连续的换行符只留一个)
# echo -e "hello    world.\n\n\n" | tr -s ' \n'
hello world.

위의 예는 비교적 간단하므로 이 명령의 성능을 확인하지 못할 수도 있습니다. 조금 더 복잡한 경우를 살펴보겠습니다.

컷은 연속된 공백을 처리하는 데 그다지 능숙하지 않다는 것을 알고 있습니다. df 명령으로 표시된 결과의 두 번째 열을 선택하기 위해 cut을 사용하려는 경우에는 수행할 수 없습니다. 이때 먼저 tr 명령을 사용하여 여러 개의 연속 공백을 하나로 압축하면 cut 명령이 요구 사항을 충족할 수 있습니다.

# df -h | tr -s ' \t' | cut -d ' ' -f 2
Size
40G
487M
497M
497M
497M
100M

tr, cut 처리를 통해 이제 두 번째 정보 열을 얻을 수 있음을 알 수 있습니다.

tr 이 명령은 매우 강력하고 사용하기 매우 간단합니다. 모두가 숙달하고 적용할 수 있기를 바랍니다.

위 내용은 Linux 시스템에서 tr 명령에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.