쉘 스크립트는 하나의 함수만 호출할 것으로 예상하지만 실제로는 두 개의 함수를 동시에 호출합니다. 이 문제를 해결하는 방법은 다음과 같습니다.
둘 다 똑같아
그들은 동일하지 않습니다
#!/bin/bash
var1=ORCL
var2=ORCL
function f1
{
echo "both are same"
}
function f2
{
echo "both are not same"
}
if [ $var1=$var2 ];
then
f1
fi
if [ $var1!=$var2 ];
then
f2
fi
답변1
공간관계 연산자 내에서 사용될 때 필수만약에상황
전임자:
if [ $var1 = $var2 ] ;
if [ $var1 != $var2 ] ;
스크립트 수정
#!/bin/bash
var1=ORCL
var2=ORCL
f1()
{
echo "both are same"
}
f2()
{
echo "both are not same"
}
if [ $var1 = $var2 ];
then
f1
fi
if [ $var1 != $var2 ];
then
f2
fi
답변2
공백을 추가해야 합니다.
바꾸다
if [ $var1=$var2 ];
그리고
if [ "$var1" = "$var2" ];
두 번째 if
진술도 마찬가지다.