-x를 사용하여 스크립트의 다른 부분을 호출하는 방법

-x를 사용하여 스크립트의 다른 부분을 호출하는 방법

나는 많은 일반 응용 프로그램을 설치하기 위한 스크립트를 설계하고 있지만 스크립트의 다른 부분으로 이동하기 위해 -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
}

더 복잡한 명령줄 구문 분석을 수행하는 방법을 알아보려면 getoptBash를 확인하세요 .getopts

간단한 getopts사용 예:https://unix.stackexchange.com/a/292242/116858

관련 정보