Bash의 문자열 비교 연산자
이 기사에서는 if
문을 사용하여 Bash에서 문자열 비교를 설명합니다.
사용자가 다른 명령을 실행할 수 있도록 명령줄 인터페이스를 제공하는 Linux에서 실행되는 셸 프로그램을 Bash 셸이라고 합니다. 또한 GNU Bourne-Again Shell(Bash)로 알려진 많은 Linux 배포판에서 기본 셸로 사용됩니다.
배쉬 스크립트
파일에 작성된 일련의 Bash 명령을 Bash 스크립트라고 합니다. Bash 셸은 파일에서 읽은 후 이러한 명령을 실행합니다.
Bash 스크립트의 파일 확장자는 .sh
입니다. First.sh
파일의 다음 내용은 다음과 같습니다.
#!/bin/Bash
echo "Hello World"
위의 First.sh
파일은 터미널에 Hello world
를 표시하는 echo
명령 하나만 포함된 Bash 스크립트입니다.
#!/bin/Bash
파일의 첫 번째 줄은 스크립트 파일에 작성된 명령을 실행하는 인터프리터로 작동하는 시스템의 Bash 프로그램에 대해 알려줍니다.
Bash 셸은 터미널에서 스크립트를 실행하는 다양한 방법을 제공합니다. 몇 가지 방법은 아래에서 설명합니다.
-
bash
명령 다음에 Bash 스크립트 파일이 스크립트를 실행하는 데 사용됩니다. 다음 명령은First.sh
스크립트를 실행합니다.bash First.sh
이 명령의 출력은 다음과 같습니다.
Hello World
-
경로를 지정하여 Bash 스크립트를 실행합니다.
chmod +x First.sh
를 사용하여 스크립트 파일에 대한 실행 권한을 할당한 후 스크립트의 경로를 지정하여 스크립트 파일을 실행할 수 있습니다.<path to the script file>/First.sh
위의 방법을 사용하여 절대 경로를 사용하거나
./First.sh
를 사용하여 스크립트에 대한 상대 경로를 사용하여 스크립트를 실행할 수 있습니다.
Bash의 문자열 변수
Bash 스크립트에서 할당 연산자(=
)를 사용하여 변수의 모든 문자열을 선언하고 초기화할 수 있습니다.
예를 들어:
#!/bin/Bash
S="Hello World"
echo $S
위의 예에서 문자열 변수 S
를 선언하고 Hello World
를 값으로 초기화합니다. echo
명령은 echo
명령과 $
연산자를 사용하여 터미널의 문자열 변수 값을 표시합니다.
Bash 스크립트의 문자열 비교 연산자
Bash 스크립트에서 =
(같음) 연산자를 사용하여 두 문자열을 비교할 수 있습니다. 또한 ==
연산자를 사용하여 문자열을 비교합니다.
==
는 문자열 비교를 위한 =
연산자의 동의어입니다.
예를 들어 다음 내용을 포함하는 Bash 스크립트 First.sh
를 고려하십시오.
#!/bin/Bash
S1="Hello World"
S2="Hello World"
if [ "$S1" = "$S2" ]
then
echo "Equal"
else
echo "Not Equal"
fi
다음 스크립트에는 S1
과 S2
의 값이 같은 두 개의 문자열이 포함되어 있습니다. if
조건은 =
연산자를 사용하여 문자열을 비교합니다. 그러나 if [ "$S1" == "$S2" ]
문을 사용하여 이러한 문자열을 비교할 수도 있습니다.
다음은 First.sh
스크립트 출력입니다.
Equal
참고:
if
문에서=
연산자 앞뒤의 공백을 제거하면(예:if [ "$S1"="$S2" ]
) 문자열을 정확하게 비교하지 않습니다.
!=
(같지 않음) 연산자는 두 문자열의 부등식 일치에 사용됩니다. if [ "$S1" != "$S2" ]
를 사용하여 if
문에서 이 연산자를 사용할 수 있습니다.
문자열 S1
과 S2
가 같지 않으면 이 문은 true
를 반환합니다.