Contents
see ListShell Script 기초 - Bash 프로그래밍
Linux/Unix 환경에서 자동화 스크립트를 작성하기 위한 Bash 셸 스크립트 기초입니다.
기본 문법
#!/bin/bash
# 반복문 예시
for i in {1..10}; do
echo $i
done스크립트 시작
#!/bin/bash
# 첫 줄은 shebang - 어떤 인터프리터를 사용할지 지정
# 스크립트 실행 권한 부여
chmod +x script.sh
# 실행
./script.sh
# 또는
bash script.sh변수
# 변수 선언 (= 주위에 공백 없어야 함)
NAME="John"
AGE=25
# 변수 사용
echo "Name: $NAME"
echo "Age: ${AGE}"
# 명령 결과를 변수에 저장
TODAY=$(date +%Y-%m-%d)
FILES=`ls -la`
# 읽기 전용 변수
readonly PI=3.14159조건문
# if-else
if [ $AGE -ge 18 ]; then
echo "성인입니다"
elif [ $AGE -ge 13 ]; then
echo "청소년입니다"
else
echo "어린이입니다"
fi
# 문자열 비교
if [ "$NAME" = "John" ]; then
echo "Hello John"
fi
# 파일 존재 확인
if [ -f "/path/to/file" ]; then
echo "파일이 존재합니다"
fi
# 디렉토리 확인
if [ -d "/path/to/dir" ]; then
echo "디렉토리가 존재합니다"
fi반복문
# for 문
for i in 1 2 3 4 5; do
echo $i
done
# range 사용
for i in {1..10}; do
echo $i
done
# C 스타일
for ((i=0; i<10; i++)); do
echo $i
done
# 파일 목록 순회
for file in *.txt; do
echo "Processing $file"
done
# while 문
count=0
while [ $count -lt 5 ]; do
echo $count
((count++))
done함수
# 함수 정의
greet() {
echo "Hello, $1!"
}
# 함수 호출
greet "World"
# 반환값
add() {
local result=$(($1 + $2))
echo $result
}
sum=$(add 5 3)
echo "Sum: $sum"입력 받기
echo "이름을 입력하세요: "
read NAME
echo "안녕하세요, $NAME님"
# 스크립트 인자
echo "첫번째 인자: $1"
echo "두번째 인자: $2"
echo "모든 인자: $@"
echo "인자 개수: $#"비교 연산자
| 숫자 비교 | 의미 |
|---|---|
| -eq | 같음 |
| -ne | 다름 |
| -lt | 작음 |
| -le | 작거나 같음 |
| -gt | 큼 |
| -ge | 크거나 같음 |