Embedded Linux

리눅스 shell : [ 4 ] 함수

작성자 임베디드코리아 작성일15-11-23 09:50 조회5,459회 댓글0건
[ 4 ] 함수
        다른 프로그래밍 언어처럼 함수를 사용하여 코드의 반복을 줄이고 명확성을 높일 수 있다.

        ■ 기본 형식
            <  함수 선언 >
            function 함수명()
            {
                  함수 내용
            }

            < 함수 사용 >
          함수명

    -  function은 생략해도 된다.
    - 함수명을 쓰는 것만으로 함수 호출이 된다. 소괄호()를 쓰지 않아도 된다.
    - 함수 선언보다 함수를 먼저 호출하면 안 된다

    Ex)
        #!/bin/bash
        func_echo()
        {
              echo "Test function"
          }
        func_echo

      Ex)
          #!/bin/sh
          #함수를 작성한다
          MyFunction () {
                    echo "함수의 echo이다."
          }
          MyParamFunc() {
                  echo "인수1:$1 인수2:$2"
          }

          #함수를 호출한다
          MyFunction
          MyParamFunc param1 param2

      Ex)  파라미터 전달 및 사용하기
              함수 내부에서는 $1, $2 등의 특수 변수를 사용하여 전달된 인자를 참조할 수 있다. $0는 스크립트의 이름이며, 함수 내에서는 함수의 이름을 참조한다.

              sum() {
                        local result=$(( $1 + $2 ))
                        echo "The sum is: $result"
            }
            sum 5 7

        Ex) 함수의 반환 값
              - 함수는 return 명령어를 사용하여 숫자 값을 반환할 수 있ek.
              - 대부분의 경우, 함수의 출력은 echo나 printf와 같은 명령어를 사용하여 표준 출력에 직접 표시된다.

              calculate() {
                        local result=$(( $1 * $2 ))
                        echo $result
              }
              output=$(calculate 5 3)
              echo "The result is: $output"