[shell] 변수 값에 따른 특정 동작 수행하기

변수의 값에 따라 스크립트에서 다양한 동작을 수행해야 할 때가 종종 있습니다. 이를 위해서는 조건문을 사용하여 이러한 상황을 처리할 수 있습니다. 이번 블로그에서는 shell 스크립트에서 변수 값에 따라 특정 명령을 수행하는 방법을 알아보겠습니다.

값에 따라 조건문으로 분기하기

Shell 스크립트에서 변수의 값에 따라 분기하는 방법은 if문을 사용하는 것입니다. 예를 들어, 변수 status의 값에 따라 다른 동작을 수행하는 스크립트를 작성해보겠습니다.

if [ "$status" = "running" ]; then
    echo "프로세스가 실행 중입니다."
elif [ "$status" = "stopped" ]; then
    echo "프로세스가 중지되었습니다."
else
    echo "알 수 없는 상태입니다."
fi

위의 코드에서 status 변수의 값에 따라서 if, elif, else 구문을 사용하여 각각 다른 동작을 수행하고 있습니다.

값에 따라 다른 명령 실행하기

때로는 변수의 값에 따라 다른 명령을 실행해야 할 때가 있습니다. 이때에는 case문을 사용하여 각 경우에 따라 다른 명령을 실행할 수 있습니다.

case "$status" in
    running)
        echo "프로세스가 실행 중입니다."
        ;;
    stopped)
        echo "프로세스가 중지되었습니다."
        ;;
    *)
        echo "알 수 없는 상태입니다."
        ;;
esac

case문을 이용하면 변수의 값에 따라 처리해야 하는 여러 경우를 간결하게 표현할 수 있습니다.

결론

변수의 값을 기반으로 한 조건부 동작은 shell 스크립트에서 매우 일반적으로 사용됩니다. if문과 case문을 이용하여 변수 값에 따라 다양한 동작을 쉽게 처리할 수 있으며, 이는 스크립트의 유연성을 높여줍니다.