본문 바로가기

Project & Module/Shell

[Unix Shell] 아규먼트 파싱 쉘


https://gist.github.com/jehiah/855086 참조

#!/bin/sh

#
# a simple way to parse shell script arguments
# 
# please edit and use to your hearts content
# 


ENVIRONMENT="dev"
DB_PATH="/data/db"

function usage()
{
    echo "if this was a real script you would see something useful here"
    echo ""
    echo "./simple_args_parsing.sh"
    echo "\t-h --help"
    echo "\t--environment=$ENVIRONMENT"
    echo "\t--db-path=$DB_PATH"
    echo ""
}

while [ "$1" != "" ]; do
    PARAM=`echo $1 | awk -F= '{print $1}'`
    VALUE=`echo $1 | awk -F= '{print $2}'`
    case $PARAM in
        -h | --help)
            usage
            exit
            ;;
        --environment)
            ENVIRONMENT=$VALUE
            ;;
        --db-path)
            DB_PATH=$VALUE
            ;;
        *)
            echo "ERROR: unknown parameter \"$PARAM\""
            usage
            exit 1
            ;;
    esac
    shift
done


echo "ENVIRONMENT is $ENVIRONMENT";
echo "DB_PATH is $DB_PATH";


'Project & Module > Shell' 카테고리의 다른 글

[BashShell] vi, ls color 제거  (0) 2017.02.20
procContentInFile  (0) 2016.06.10
파일 수정 Shell Program  (0) 2015.01.16