Shell script에서 문자열의 대소문자 변환 방법에 대해서 알아보겠습니다.

대문자는 소문자로, 소문자는 대문자로 변경할 수 있습니다.

이 글의 예제들은 Ubuntu 20.04에서 Bash shell을 사용하여 작성되었습니다.

1. 문자열 전체를 대문자 또는 소문자로 변경

문자열 전체를 대문자 또는 소문자로 변환하는 예제입니다.

  • ${string^^} : string을 대문자로 변환
  • ${string,,} : string을 소문자로 변환
#!/bin/bash

string="Hello, World"

uppercase_string=${string^^}
echo "대문자로 변경: $uppercase_string"

lowercase_string=${string,,}
echo "소문자로 변경: $lowercase_string"

Output:

$ bash example.sh
대문자로 변경: HELLO, WORLD
소문자로 변경: hello, world

2. 특정 문자만 대문자 또는 소문자로 변경

아래와 같이 구현하면 문자열에서 특정 문자들만 소문자 또는 대문자로 변환합니다.

  • ${string^^o} : string에서 o만 대문자로 변환
  • ${string,,W} : string에서 W만 소문자로 변환
#!/bin/bash

string="Hello, World"

uppercase_string=${string^^o}
echo "대문자로 변경: $uppercase_string"

lowercase_string=${string,,W}
echo "소문자로 변경: $lowercase_string"

Output:

$ bash example.sh
대문자로 변경: HellO, WOrld
소문자로 변경: Hello, world