텍스트 처리 쉘 명령의 예 - tr, uniq, sort, sed 및 awk

tr, uniq, sort, sed 및 awk를 사용한 텍스트 처리



목차


  • Introduction
  • Objective
  • Commands intro
  • Let us create the command
  • Let us breakdown the commands
  • Conclusion
  • References



  • 소개


  • 쉘 스크립트의 텍스트 처리는 다양한 명령을 사용하여 항상 쉽고 효율적입니다.
  • 이 블로그에서는 샘플 문장을 선택하고 명령tr, uniq, sort, sed and awk을 사용하여 문장
  • 을 처리하는 방법을 살펴보겠습니다.
  • 이러한 명령은 매우 효과적이며 사용자 편의에 따라 문자열을 처리하고 인쇄하는 사용자 친화적인 옵션이 있습니다
  • .
  • 실시간 사용 - 사용자 편의에 따라 더 큰 로그 파일을 처리하고 필요한 값을 인쇄해야 하는 경우 텍스트 처리가 필요합니다
  • .

    목적



    주어진 문자열에 대해 아래 주어진 형식에 따라 영숫자(문자열)의 발생 횟수를 계산하고 콘솔에 출력(내림차순)해야 합니다.

    예시:

    string1->4
    string2->3
    string3->3
    string4->2
    



    명령 소개


  • tr - 지정된 문자열을 지정된 패턴으로 변환합니다
  • .
  • uniq - 반복되는 문자열이 생략됨
  • sed - 텍스트 필터링/변환을 위한 강력한 sh 명령 중 하나인 텍스트 스트림 편집기
  • sort - 문자열 또는 파일의 줄을 정렬합니다
  • .
  • awk - 패턴 일치 및 텍스트 처리 명령, sed와 같은 또 다른 강력한 명령입니다.

  • 명령을 생성하자


  • 지정된 문자열을 변수에 저장합니다.

  • $ string="This is the Sample sentence, that contains repeated sample string exists more than once in the sample sentence. Repeat once more added in the sample string"
    


  • 목표를 달성하기 위한 명령은 다음과 같습니다.

  • $ echo $string | tr -c '[:alnum:]' '\n' | tr '[:upper:]' '[:lower:]' | sed '/^$/d' | sort | uniq -c | sort -nr | awk '{ print $2"->"$1 }'
    


  • 명령을 실행하면 예상 형식에 따라 콘솔에 출력이 인쇄됩니다.

  • $ echo $string | tr -c '[:alnum:]' '\n' | tr '[:upper:]' '[:lower:]' | sed '/^$/d' | sort | uniq -c | sort -nr | awk '{ print $2"->"$1 }'
    sample->4
    the->3
    string->2
    sentence->2
    once->2
    more->2
    in->2
    this->1
    that->1
    than->1
    repeated->1
    repeat->1
    is->1
    exists->1
    contains->1
    added->1
    


    명령어를 분석해보자


  • tr -c '[:alnum:]' '\n' -> 단락(모든 영숫자 문자)을 한 줄에 한 단어씩 한 열로 변환합니다
  • .
  • tr '[:upper:]' '[:lower:]' -> 대문자를 소문자로 변환
  • sed '/^$/d' -> 빈 개행 제거
  • sort -> 각 줄을 사전순으로 정렬
  • uniq -c -> 발생 횟수로 단어 발생 및 접두사 행을 계산합니다
  • .
  • sort -nr -> 문자열 수치에 따라 비교 정렬하여 역순으로 출력
  • awk '{ print $2"->"$1 }' -> 예상 형식에 따라 정렬 출력을 인쇄합니다
  • .



    결론


  • 이 블로그에서는 일부 텍스트 처리 셸 명령에 대해 설명하고 예상 형식
  • 에 따라 샘플 출력을 인쇄했습니다.
  • 독자는 man 페이지에서 각 명령의 옵션을 탐색하고 이에 대해 자세히 알아보고 필요할 때 적용할 수 있습니다
  • .

    읽어 주셔서 감사합니다!

    참조



    Man Pages


    나를 따라와,



  • GitHub


  • gsaravanan.dev
  • 좋은 웹페이지 즐겨찾기