명령줄 명령에 대해 배웠습니다.시험몇 가지 예를 읽어보세요. 그 중 하나는 나에게 매우 모호합니다.
test 100 -gt 99 && echo "Yes, that's true." || echo "No, that's false."
지금까지 나의 이해는 다음과 같습니다.
test 100 -gt 99
100이 99보다 큰지 평가합니다.
echo "Yes, that's true." || echo "No, that's false."
표현식이 true이면 이중 파이프 기호 왼쪽의 명령이 실행되고, 그렇지 않으면 오른쪽의 명령이 실행됩니다.
힌트를 못찾겠어요&설명서에 있는 진술.
그 목적은 무엇입니까?
답변1
&
test
그것은 전혀 말이 되지 않습니다 .HTML 엔터티~을 위한증폭기ersand 는 &
HTML에서 특별한 의미를 가지므로 있는 그대로 렌더링할 수 없습니다. 스니펫이 어디서 나오든 프레젠테이션이 망가집니다.
해당 문자를 디코딩하려면 다음 줄을 사용해야 합니다.
test 100 -gt 99 && echo "Yes..." || echo "No..."
&&
그리고 ||
여전히 자체적으로는 아무 관련이 없지만 test
쉘의 조건부 구성입니다. cmd1 && cmd2
먼저 실행하고 cmd1
true(0)를 반환하면 실행합니다 cmd2
.