내 사용자 정의 쉘 스크립트에 몇 가지 옵션을 추가하고 싶습니다. 내가 보여줄 수 있어그것여기 있습니다. 이것은 일급 비밀이 아니기 때문입니다. :-P
내 경험에 따르면 설정 옵션과 설정 해제 옵션이라는 두 가지 옵션 유형이 있습니다. 설정 옵션은 일반적으로 유형이 이중 하이픈으로 연결되지만 순서 --key=value
가 지정된 튜플로 나타날 수도 있습니다 -k value
. 설정되지 않은 옵션은 short -k
또는 long 입니다 --key
.
일반적인 관점에서 우리는 옵션이 기본 구성과 짧고 긴 변형을 갖도록 정의하려고 합니다. 생각해보려고 노력했지만 현재 경험이 부족하여 이미 정의된 명령만 사용할 수 있습니다.
--help/-h
, 와 같은 특별한 태그도 있지만 --version/-v
, 우리는 많은 작업을 했다고 생각합니다. 지금까지 시도한 것은 다음과 같습니다.
UNSET_OPTIONS_SHORT=(
"-ut1"
"-ut2"
)
UNSET_OPTIONS_LONG=(
"--unset_tag_1"
"--unset_tag_2"
)
UNSET_OPTIONS_DEFAULT=(
"true"
"false"
)
SET_OPTIONS_SHORT=(
"--st1"
"--st2"
)
SET_OPTIONS_LONG=(
"--set_tag_1"
"--set_tag_2"
)
SET_OPTIONS_DEFAULT=(
"42"
"mango"
)
SET_OPTIONS_DELIMITER="="
ARGS=( "${@}" )
for arg in ${ARGS[@]}; do
# parse and identify arguments into between options and inputs
# It must early-fail in case it cannot parse options,
# either short or long formats
done