set
스크립트에서 다른 옵션 을 효율적으로 사용하는 방법을 배우고 set -u
변수가 올바르게 설정되지 않으면 (예 : 사용자 삭제) 스크립트를 종료하는 데 완벽한 것으로 나타 났습니다 . 에 따르면 사람의 페이지, set -u
그리고 것은 set -e
다음을 수행 ...
-e Exit immediately if a command exits with a non-zero status.
-u Treat unset variables as an error when substituting.
이 기능을 테스트하기 위해 테스트 스크립트를 만들었지 만 예상대로 작동하지 않는 것 같습니다. 누군가 내 문제를 설명하고 잘못 해석하는 부분을 더 잘 설명 할 수 있습니까? 테스트 스크립트는 다음과 같습니다. 감사합니다.
set -e
set -u
testing="This works"
echo $?
echo ${testing}
testing2=
echo $?
echo ${testing2}
testing3="This should not appear"
echo $?
echo ${testing3}
스크립트에 0 과 "This works" 가 표시 되고 ${testing2}
설정되지 않으면 실패 합니다.
대신 0 과 "This works"가 표시 되고 0 다음에 0 이 표시됩니다.
누구나 지식을 제공 할 수 있습니까? 감사합니다.