지침을 따르고 있지만 사용하는 방법이 혼란스럽습니다.exit
FILE=~/.bashrc
if [ -e "$FILE" ] ; then
if [ -f "$FILE" ]; then
echo "$FILE is a regular file."
fi
if [ -d "$FILE" ]; then
echo "$FILE is a directory."
fi
if [ -r "$FILE" ] ; then
echo "$FILE is readable."
fi
if [ -w "$FILE" ] ; then
echo "$FILE is writabe."
fi
if [ -x "$FILE" ]; then
echo '$FILE is executable/searchable.'
fi
else
echo '$FILE does not exist'
exit 1
fi
exit
여기로 달려가
$ bash test_file.sh
/Users/me/.bashrc is a regular file.
/Users/me/.bashrc is readable.
/Users/me/.bashrc is writabe.
명령이 주석 처리된 경우 exit
출력은 변경되지 않은 상태로 유지됩니다.
그것은 무엇을 합니까? 언어에 익숙해지면 내보내기를 생략할 수 있나요?
답변1
이 exit
명령은 스크립트를 종료할 뿐만 아니라 one 을 설정합니다 exit code
. 이는 관례적으로 성공적인 종료 시 0이고 오류 시 다른 정수입니다. 따라서 스크립트에서 이 명령의 목적은 호출자(다른 스크립트/프로그램 또는 사용자)에게 원인을 알려주는 것입니다. 프로그램이 오류와 함께 종료됩니다. 비슷한 쉘 에서는 bash
쉘 변수를 검사하여 종료 코드를 보거나 조사할 수 있습니다 $?
.
또한, 들여쓰기 문제가 있습니다. 절 은 첫 문장과 같은 수준 else
으로 들여쓰기 되어야 합니다 ...if