다음과 같은 오류 메시지를 제공 할 수 있습니다.
USERNAME=${1:?"Specify a username"}
다음과 같은 메시지가 표시되고 코드 1로 종료됩니다.
./myscript.sh
./myscript.sh: line 2: 1: Specify a username
모든 것의 더 완전한 예 :
#!/bin/bash
ACTION=${1:?"Specify 'action' as argv[1]"}
DIRNAME=${2:-$PWD}
OUTPUT_DIR=${3:-${HOMEDIR:-"/tmp"}}
echo "$ACTION"
echo "$DIRNAME"
echo "$OUTPUT_DIR"
산출:
$ ./script.sh foo
foo
/path/to/pwd
/tmp
$ export HOMEDIR=/home/myuser
$ ./script.sh foo
foo
/path/to/pwd
/home/myuser
$ACTION 첫 번째 인수의 값을 취하고 비어 있으면 종료됩니다.
$DIRNAME 두 번째 인수이며 기본값은 현재 디렉토리입니다.
$OUTPUT_DIR는 세 번째 인수이거나 $HOMEDIR(정의 된 경우) 그렇지 않은 경우 /tmp입니다. 이것은 OS X에서 작동하지만 이식성에 대해서는 긍정적이지 않습니다.