부울 변수를 부정하고 새 변수에 할당 [중복]

Dec 31 2020

Bash 스크립트에서 y다른 부울 변수의 부정 값을 저장하기 위해 부울 변수 를 정의하고 싶습니다 x. 다음 스크립트,

#!/bin/bash

x=true
y=$(( ! "${x}" ))
echo "${y}"

변수 y를 1로 설정합니다 . 대신 y평가되도록 어떻게 변경할 수 false있습니까?

답변

3 axiac Dec 31 2020 at 06:32

Bash에는 변수에 대한 부울 값 개념이 없습니다. 변수의 값은 항상 문자열입니다. 일부 상황에서는 숫자로 처리 할 수 ​​있지만 그게 다입니다.

당신은 사용 1하고 0대신하거나 (과 비교 할 수 =또는 ==과 문자열로) truefalse그들이 부울 척. 코드는 더 읽기 쉽지만 여전히 문자열입니다 :-)