쉘 스크립트 - 모든 옵션을 반복하는 방법

쉘 스크립트 - 모든 옵션을 반복하는 방법

저는 쉘 스크립팅을 처음 접했고 다음 상황에 직면했습니다. 여러 옵션이 있는 Perl 스크립트가 있습니다. 모든 옵션이 필요한 것은 아닙니다.

example.prl [options]
options: 
    -h             help
    -o filename    output file name
    -f             force output file overwrite
    -d             debug mode
    ...

prl 스크립트의 옵션을 구문 분석하는 쉘 스크립트를 만들고 싶습니다. 그리고 다음과 같은 옵션이 모두 필요한 것은 아닙니다. 예를 들면 다음과 같습니다.

./example.sh -o output_file 
OR
./example.sh -o output_file -f

제가 이룬 몇 가지 진전은 다음과 같습니다. 단, 매개변수 1개에 대해서만 해당됩니다.

#!/bin/bash

path=/proj/scripts/example.prl
option=$1
option_value=$2

echo "The command to run:"
echo $path $name $option 
$path $option $option_value 

사용자가 배치한 모든 옵션을 반복하고 명령을 구성하는 방법이 있습니까?

답변1

#!/bin/bash
while [[ ! -z "$1" ]]; do
    case "$1" in
        -a)
            handle_dasha
            ;;
        -b)
            and_so_on
            ;;
    esac
    shift
done

관련 정보