함수(Function) : 중복 코드를 줄이고, 의미를 분리하다.
✅ 함수 기본 구조
function 함수이름() {
# 실행할 명령들
}
또는 function 키워드 없이도 쓸 수 있다:
함수이름() {
# 실행할 명령들
}
✅ 예제: 간단한 인사 함수
greet() {
echo "안녕하세요, $1님!"
}
greet "bergerac"
$1은 함수에 전달된 첫 번째 인자. $2, $3도 가능하다.
greet "cyrano" → 출력: 안녕하세요, cyrano님!
✅ return과 exit의 차이점
함수에서 결과를 반환할 때는 return을 쓸 수 있다.
double() {
result=$(( $1 * 2 ))
return $result
}
double 3
echo "리턴값: $?" # $?에 함수의 return 값이 저장됨
- return은 0~255 사이의 숫자만 반환 가능
- 문자열이나 큰 수를 반환하려면 전역 변수에 저장하거나 echo로 출력해서 받아야 함
✅ echo를 이용한 문자열 반환
greeting() {
echo "반갑습니다, $1님!"
}
message=$(greeting "윤꽁")
echo "$message"
✅ 함수에 기본값 넣기
say_hello() {
name=${1:-"손님"}
echo "안녕하세요, $name님!"
}
say_hello "윤꽁"
say_hello # → "안녕하세요, 손님님!"
✅ 실전 예제: 디렉토리 안 파일 개수 세기 함수
count_files() {
dir=$1
count=$(ls "$dir" | wc -l)
echo "$dir에는 $count개의 파일이 있습니다."
}
count_files "/etc"'Linux' 카테고리의 다른 글
| 스크립트 분할 관리 (2) | 2025.07.14 |
|---|---|
| Bash 제어 흐름 (1) | 2025.07.12 |
| Bash 변수와 배열의 기초 (1) | 2025.07.11 |
| Linux file system 명령어 실습 (5) | 2025.07.10 |
| Package Manager (2) | 2025.07.09 |