문제

Unset 변수의 사용을 방지하기 위해 Kornshell (KSH) 스크립트에 오류 나 경고를 던질 수있는 방법이 있습니까? 제거하고 싶은 임시 폴더가 있다고 가정 해 봅시다.

TEMP_FILES_DIR='/app/myapp/tmp'
rm -Rf $TEMP_FILE_DIR #notice the misspelling

실제로 발생하기 전에 이런 종류의 실수를 막는 방법은 무엇입니까?

스크립트가 제거를 시도하기 전에 파일 존재와 빈 문자열을 확인해야한다는 것을 알고 있습니다. 이것은 일부 경고로 피할 수있는 실수를 설명하는 어리석은 예일뿐입니다. 이 기능이 KSH에 존재하는지 모르겠습니다. 존재한다면 어떻게 켜나요?

도움이 되었습니까?

해결책

명령

set -u

POSIX를 유발합니다 (1) UNSET 변수를 확장하려는 시도가 이루어질 때 Grouse에 대한 유도체.

예시:

$ echo $foo

$ set -u
$ echo $foo
sh: foo: parameter not set

다른 팁

컨텐츠가있는 경우 변수를 확인할 수 있습니다. 즉, '', "변수는 비어있는"과 같은 메시지를 인쇄 할 수 있습니다.

그러나 여전히 Pebcak 오류를 해결하지는 않습니다. 아는 것은 아무 일도 일어나지 않았다는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top