본문 바로가기
시스템 info/unix & Linux

리눅스 스크립트 함수 및 파라메타 사용

by 감성김씨 2023. 2. 12.
728x90
반응형

 

Linux 스크립트에서 함수의 예제

 

 

hello() 는 hello 함수를 정의하는 구문입니다. 괄호 안의 코드 블록이 함수의 내용입니다.

echo "Hello, World!" 는 기본 출력에서  "Hello, World!"  정상적으로 나오는것을 확인 합니다.
여기서 "hello"는 "hello" 함수를 호출하는 구문입니다.
위의 스크립트를 실행하게 되면 "Hello, World!"라는 문자열이 출력 됩니다.


 

 

파라메타 값을 사용하기 위한 사용법

[링크 ]

 

다른 예를 들어보겠습니다.

 


local name="$1" 는 함수 내에서 name 변수를 정의하는 구문입니다. "$1"은 함수 호출 시 전달된 첫 번째 매개변수 값입니다. test "kim"은 test 함수를 호출하는 구문입니다. "kim"은 test 함수에 전달되는 name 매개변수의 값입니다.
위의 스크립트를 실행하면, "Hello, kim!"라는 문자열이 출력됩니다.

 

 

이제 한 단계 위인 예제를 들어 보겠습니다.

 

local a="$1"와  local b="$2"는 함수 내에서 a와 b 변수를 정의합니다.

"$1"과 "$2"는 함수 호출 시 전달된 첫 번째와 두 번째 매개변수 값입니다.
echo $((a + b))는 a와 b의 합을 계산하여 출력하는 구문입니다.
result=$(add 3 4)는 add 함수를 호출하여 결과 값을 result 변수에 저장 합니다.

$(command) 구문은 command의 결과 값을 반환합니다.

echo "The result is: $result"는 result 변수의 값을 출력합니다.
스크립트를 실행하면, "The result is: 3"라는 값이 출력하게 됩니다.

 

이제 for 문이 포함 된 예제를 들어 보겠습니다.

 

 

 

for value in "$@"; do는 매개변수를 반복하는 구문입니다. "$@"는 함수에 전달된 모든 매개변수 값을 표현합니다.
sum=$((sum + value))는 sum 변수에 현재 매개변수 값을 더하는 구문입니다.
echo $sum은 sum 변수의 값을 출력하는 구문입니다.
위의 스크립트를 실행하면, "The result is: 15"라는 문자열이 출력됩니다.

 

함수를 다른 파일에 정의하고, 실행하는 예제입니다

 

add_functions.sh 파일에서는 add_all 함수를 정의하고 있습니다.
main.sh 파일에서는 source 명령어를 사용하여 add_functions_test.sh 파일을 불러와 함수를 실행합니다.

위의 스크립트를 실행하면, "The result is: 15"라는 문자열이 출력됩니다.

728x90
반응형