
나는 많은 일반 응용 프로그램을 설치하기 위한 스크립트를 설계하고 있지만 스크립트의 다른 부분으로 이동하기 위해 -t 태그를 추가하는 방법이 있는지 궁금합니다. 즉, -t는 단지 나열하는 것 없이 튜토리얼을 호출합니다. 돕다 ?
답변1
예, 하지만 몇 가지 명령줄 구문 분석을 수행해야 합니다.
이것은 사용되지 않습니다 getopt
:
case "$1" in
-t) do_tutorial
exit 0 ;;
-i) do_install "$2"
exit 0 ;;
-h) do_usage
exit 0 ;;
*) do_usage >&2
exit 1 ;;
esac
이는 단지 예일 뿐이지만 명령줄에서 스크립트 이름 다음의 첫 번째 항목(플래그)을 사용하며 $1
해당 값에 따라 다른 작업을 수행합니다. 그런 다음 명령줄에서 각 플래그를 지원하는 데 필요한 다양한 동작을 구현하는 함수를 갖게 됩니다.
do_usage () {
cat <<USAGE_END
Usage: script [ -i "component" | -h | -t ]
Options:
-i "component" Install "component"
-h Show this help text
-t Show tutorial
USAGE_END
}
더 복잡한 명령줄 구문 분석을 수행하는 방법을 알아보려면 getopt
Bash를 확인하세요 .getopts
간단한 getopts
사용 예:https://unix.stackexchange.com/a/292242/116858