ì¹ìë ì´ì±ê±¸ìì§ì¸ë¹í¤ëì¼ì¼ì´ì¤
차례:
Bash 스크립트를 작성할 때 종종 두 문자열을 비교하여 동일한 지 여부를 확인해야합니다. 두 개의 문자열은 길이가 동일하고 동일한 문자 시퀀스를 포함 할 때 동일합니다.
이 학습서는 Bash에서 문자열을 비교하는 방법을 설명합니다.
비교 연산자
비교 연산자는 값을 비교하고 true 또는 false를 반환하는 연산자입니다. Bash에서 문자열을 비교할 때 다음 연산자를 사용할 수 있습니다.
-
string1 = string2
및string1 == string2
항등 연산자는 피연산자가 같으면 true를 반환합니다.-
test
와 함께=
연산자를 사용하십시오; then echo "Strings are equal." else echo "Strings are not equal." fi
; then echo "Strings are equal." else echo "Strings are not equal." fi
스크립트가 실행되면 다음 출력이 인쇄됩니다.
Strings are equal.
다음은 사용자의 입력을 받아 주어진 문자열을 비교하는 또 다른 스크립트입니다. 이 예에서는
]; then echo "Strings are equal." else echo "Strings are not equal." fi
를 사용합니다]; then echo "Strings are equal." else echo "Strings are not equal." fi
]; then echo "Strings are equal." else echo "Strings are not equal." fi
프롬프트가 표시되면 스크립트를 실행하고 문자열을 입력하십시오.
Enter first string: Linuxize Enter second string: Ubuntu Strings are not equal.
논리 및
&&
및 또는||
문자열을 비교하려면:] && echo "Equal" || echo "Not equal"
문자열에 하위 문자열이 포함되어 있는지 확인
문자열에 하위 문자열이 포함되어 있는지 확인하는 방법에는 여러 가지가 있습니다.
한 가지 방법은 별표 기호로 하위 문자열을 둘러싸는 것입니다.
*
모든 문자와 일치합니다.#!/bin/bash VAR='GNU/Linux is an operating system' if]; then echo "It's there." fi
스크립트는 다음을 에코합니다.
It's there.
다른 옵션은 아래와 같이 정규식 연산자
=~
를 사용하는 것입니다.#!/bin/bash VAR='GNU/Linux is an operating system' if]; then echo "It's there." fi
마침표 뒤에 별표
.*
오는 경우 개행 문자를 제외한 모든 문자가 0 번 이상 나타납니다.문자열이 비어 있는지 확인
변수가 빈 문자열인지 여부를 확인해야하는 경우가 종종 있습니다.
-n
및-z
연산자를 사용하여이를 수행 할 수 있습니다.#!/bin/bash VAR='' if]; then echo "String is empty." fi
String is empty.
#!/bin/bash VAR='Linuxize' if]; then echo "String is not empty." fi
대소 문자 연산자와 문자열 비교
테스트 연산자를 사용하는 대신 case 문을 사용하여 문자열을 비교할 수도 있습니다.
#!/bin/bash VAR="Arch Linux" case $VAR in "Arch Linux") echo -n "Linuxize matched";; Fedora | CentOS) echo -n "Red Hat";; esac
사전 비교
사전 비교는 문자열의 문자를 왼쪽에서 오른쪽으로 순차적으로 비교하여 두 문자열을 사전 순으로 비교하는 연산입니다. 이런 종류의 비교는 거의 사용되지 않습니다.
다음 스크립트는 두 문자열을 사전 식으로 비교합니다.
#!/bin/bash VAR1="Linuxize" VAR2="Ubuntu" if]; then echo "${VAR1} is lexicographically greater then ${VAR2}." elif]; then echo "${VAR2} is lexicographically greater than ${VAR1}." else echo "Strings are equal" fi
스크립트는 다음을 출력합니다:
Ubuntu is lexicographically greater than Linuxize.
결론
문자열 비교는 Bash 스크립팅에서 가장 기본적이고 자주 사용되는 작업 중 하나입니다. 이 학습서를 읽은 후 Bash에서 문자열을 비교하는 방법에 대해 잘 알고 있어야합니다. 문자열 연결에 대한 안내서를 확인할 수도 있습니다.
bash 터미널
-
이 미디어는 Droid가 iPhone과 디바이스를 비교하는 방법에 초점을 맞추고 있지만, iPhone은 운영 체제 seige 밑에있다. 안드로이드는 모바일 운영체제 시장의 지배적 인 점유율을 차지할 때까지는 수적으로 월등히 많았고 시간이 많이 걸렸습니다.

버라이존이 안드로이드 침략에 참여하기까지 3 일 밖에 남지 않았습니다. T-Mobile은 오픈 소스 Google 운영체제를 처음으로 받아 들였지만, 스프린트와 현재 버라이존을 추가함으로써 안드로이드는 아이폰 OS를 과장하여 모바일 운영체제 가운데 지배적 인 위치에서는 조용한 혁명을 일으키고있다. P>
P>
물론 Verizon은 iPhone을 직접 공격하는 광고 캠페인을 실행하여 Droid와 비교하여 논쟁을 시작했습니다. 사실 버라이존이나 구글도 아이폰을 죽이려면 Droid를 필요로하지 않는다.
bash에서 문자열에 하위 문자열이 포함되어 있는지 확인하는 방법

Bash에서 문자열을 사용할 때 가장 일반적인 작업 중 하나는 문자열에 다른 문자열이 포함되어 있는지 여부를 확인하는 것입니다. 이 기사에서는 문자열에 하위 문자열이 포함되어 있는지 확인하는 몇 가지 방법을 보여줍니다.
bash에서 파일을 한 줄씩 읽는 방법

Bash 스크립트를 작성할 때 때때로 파일을 한 줄씩 읽어야하는 상황에 처하게됩니다. 예를 들어, 스크립트에서 처리해야하는 데이터가 포함 된 텍스트 파일이있을 수 있습니다.