나는 bash로 시작하고 다음을 발견했다.
if test $first -lt $second
then
echo $first is lower than $second
else
if test $first -gt $second
then
echo $first is higher than $second
else
echo $first and $second are equals
fi
fi
스크립트를 읽고 실행하기 위해 -lt와 -gt가 무엇인지 알지 못합니다.
누군가가 그런 종류의 ‘도구’의 이름과 그들이 무엇을하는지 말해 줄 수 있습니까 (-lt 및 -gt)? 감사!
답변
less than및 의 줄임말입니다 greater than. bash에서 정수 비교에 사용됩니다. 다음을 입력하여 자세한 내용을 읽을 수 있습니다 man test.
....
INTEGER1 -gt INTEGER2
INTEGER1 is greater than INTEGER2
....
INTEGER1 -lt INTEGER2
INTEGER1 is less than INTEGER2
....
답변
bash 의 내장 명령 이므로 (대부분의 다른 쉘에서와 같이 ) 명령 의 정의 -lt및 -gt설명서 ( ) 또는 bash 설명서에서 찾을 수 있습니다 .testman testtest
-lt및 -gt숫자 비교하다 (보다 작음이 [아니라 동일한,보다 큰 [같지 않음). 또한 이하 / 이상 또는 동등 사업자가 있습니다 -le와 -ge, 평등과 같지 않음 사업자 -eq와 -ne. 이들은 숫자 연산자이므로 양쪽이 숫자가 아니고 9보다 작은 것으로 간주 되면 오류가 발생합니다 10.
-lt평소 <가 아닌 이름 이 사용되는 이유 는 문자 <가 리디렉션으로 해석되기 때문입니다. 연산자는 =및 !=도 존재하지만, 그들은 문자열 비교 수행 test 00 -eq 0하는 반면 참 test 00 = 0거짓을.
bash를 포함한 일부 쉘에는 연산자가 <있으며 >문자열 사전 비교를 수행하므로 이전에 정렬되어 test 9 \< 10있기 때문에 거짓 9입니다 1(역 슬래시는 문자 <가 리디렉션 연산자로 해석되지 않도록합니다 ). 이 포탄은 또한 예를 들어 시험을위한 이중 브라켓 구문 제공 [[ 9 < 10 ]](반대로 [ 9 \< 10 ]이 때문에 내부 리디렉션 할 수 없습니다), <인용 될 필요하지 않습니다.
답변
답변
이들은 비교 연산자입니다
-lt = 미만
-gt =보다 큼
자세한 내용은이 페이지를 확인하십시오.