논리적 인 사용에 대한 동등성을 입증하려고합니다 & & 및 || 연산자를 'If then else fi'조건으로 변경하고 해당 이해가 올바른지 확인하려고했습니다. 조건 경우 광산 관련, 이것을 고려 & 논리적 &와의 관점에서 작성표현 다음 논리 이외의 경우 && 및 ||
if (flag="$value") then
function1 (p1)
rc=$?
if ("$rc"=0) then
function2 (p2)
fi
elif (flag="$value2") then
function1 (p1)
rc=$?
if ("$rc"=0) then
function2 (p2)
fi
else
echo "Msg"
fi
||
(([ flag = "$value" ] && function1 (p1)) && function2 (p2)) ||
(([ flag = "$value2" ] && function1 (p2)) && function2 (p2)) ||
echo "message"
내 Q의
과 같습니다- 위의 방법은 항상 사용할 수 있습니다.
- 부모가 사용할 수있는 변수가없는 새 셸을() 괄호로 묶은 이야기가있었습니다. 이 연산자를 그룹화하여 우선 순위를 나타내려면 해당 연산자를 그룹화 할 수 있었으면합니다.
@Chepner. 설명을위한 Thx. 그래서 위의
{{ $opte || $optf } ; && [ -n "$s1" ] ; } && echo "error message"
하고, 따라서이 논리를 번역하는 것처럼 쓸 수있다이
optf=false
opte=false
optp=false
case $opt in
p) ...
(($opte || $optf) && [ -n "$s1" ]) && echo "error message"
처럼 보이는 경우 문 : 당신은 p 옵션 발생할 때 확인하세요 opte 또는 optf 사실입니다. 둘 중 하나가 true이고 s1에 대한 값이 있으면 오류 메시지를 던집니다. 그럴 건가요, 아니면 아직 막아야 할 구멍이 있습니다. Gotcha- 나는 ";" . {}; - 나는 내 운영자들을 클럽에 동원시켜야한다.
if command1; then
command2
else
command3
fi
command1 && command2 || command3
이 일치하지 않는 것을
는
어떤 셸입니까? – anubhava
유효한 쉘로 시작하십시오. 당신의'if ... else' 문은 그렇지 않습니다. – chepner
안녕하세요.그것의 KSH – user1874594