ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Bash] 정규 표현식
    Bash 2023. 10. 28. 13:43
    반응형

    정규 표현식은 Bash 셸 스크립트에서 문자열 검색, 패턴 일치, 대체 등 다양한 문자열 작업을 수행하는 데 사용됩니다. 다음은 정규 표현식을 사용한 고급 스크립팅 팁과 예제입니다.



    1. 문자열에서 패턴 일치 찾기:

    grep 명령어를 사용하여 문자열에서 정규 표현식 패턴과 일치하는 문자열을 검색할 수 있습니다.

    예제: 문자열에서 이메일 주소 추출

    #!/bin/bash 
    
    text="Please contact support@example.com for assistance." 
    
    email_pattern="[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}" 
    
    email=$(echo "$text" | grep -o -E "$email_pattern") 
    
    echo "Email address found: $email" 
    

    설명:

    email_pattern 변수에 이메일 주소를 찾기 위한 정규 표현식 패턴을 저장합니다.
    grep 명령어를 사용하여 -o 옵션으로 매칭된 문자열만 출력하며 -E 옵션으로 정규 표현식을 사용합니다.
    결과를 email 변수에 저장하고 출력합니다.


    2. 문자열 대체:

    sed 명령어를 사용하여 문자열 내에서 정규 표현식 패턴과 일치하는 문자열을 대체할 수 있습니다.

    예제: 문자열 내의 숫자를 '*'로 대체

    #!/bin/bash 
    
    text="There are 123 cats and 456 dogs." 
    
    replacement="*" 
    
    echo "$text" | sed 's/[0-9]/*/g' 
    

    설명:

    sed 명령어를 사용하여 s 옵션으로 문자열 대체를 수행합니다.
    [0-9] 정규 표현식 패턴을 사용하여 모든 숫자를 찾고 *로 대체합니다.


    3. 문자열 분할:

    awk 명령어를 사용하여 문자열을 정규 표현식으로 분할하고 필요한 부분을 추출할 수 있습니다.

    예제: 공백으로 구분된 문자열에서 세 번째 단어 추출

    #!/bin/bash 
    
    text="This is an example text." 
    
    third_word=$(echo "$text" | awk '{print $3}') 
    
    echo "Third word: $third_word" 
    

    설명:

    awk 명령어를 사용하여 문자열을 공백으로 구분하고, 세 번째 단어를 third_word 변수에 저장합니다.
    정규 표현식은 Bash 스크립트에서 문자열 처리를 강력하게 지원하는 강력한 도구입니다. 이러한 예제를 사용하여 원하는 패턴을 검색하고 대체하며 문자열을 처리할 수 있습니다.

    반응형

    'Bash' 카테고리의 다른 글

    [Bash] curl FTP SSH Telnet  (0) 2023.10.28
    [Bash] 날짜와 시간  (1) 2023.10.28
    [Bash] 시그널 및 프로세스 관리  (0) 2023.10.27
    [Bash] 변수의 범위와 환경 변수  (0) 2023.10.27
    [Bash] 파이프라인 및 리다이렉션  (0) 2023.10.27
Designed by Tistory.