반응형
Linux Bash Shell Script에서는 출력 명령어를 사용하여 화면에 정보를 표시하거나 파일에 데이터를 기록할 수 있습니다. 이번 포스팅에서는 가장 기본적인 출력 명령어인 echo
와 printf
에 대해 알아보고, 각 명령어의 사용법과 활용 예제를 함께 살펴보겠습니다.
1. echo 명령어
echo란?
echo
는 간단한 문자열 출력 명령어로, Bash에서 가장 기본적으로 사용됩니다. 일반적으로 화면에 텍스트를 출력하거나, 스크립트에서 정보를 사용자에게 전달할 때 사용됩니다.
사용법
echo [옵션] [출력할 문자열]
주요 옵션
-n
: 출력 후에 줄 바꿈을 하지 않음-e
: 백슬래시() 문자를 해석하여 특수 문자를 처리--help
: 사용법을 표시
기본 예제
#!/bin/bash
# 기본 출력
echo "Hello, World!"
# 줄 바꿈 없이 출력
echo -n "Hello, "
echo "World!"
# 특수 문자 해석
echo -e "Hello\nWorld"
실행 결과
Hello, World!
Hello, World!
Hello
World
특수 문자 예시
특수 문자 | 설명 |
---|---|
\n |
줄 바꿈 |
\t |
탭 |
\\ |
백슬래시 출력 |
활용 예제
텍스트 파일에 출력
#!/bin/bash
echo "This is a sample text." > output.txt
echo "This line is appended." >> output.txt
2. printf 명령어
printf란?
printf
는 C 언어의 printf
함수와 유사한 명령어로, 형식을 지정하여 출력을 조정할 수 있습니다. echo
에 비해 더 정밀한 제어가 가능합니다.
사용법
printf "포맷 문자열" [인자 ...]
주요 특징
printf
는 줄 바꿈을 자동으로 추가하지 않으므로 명시적으로\n
을 포함해야 합니다.- 다양한 형식 지정자를 지원하여 숫자, 문자열 등을 출력할 수 있습니다.
기본 예제
#!/bin/bash
# 문자열 출력
printf "Hello, World!\n"
# 숫자 출력
printf "Number: %d\n" 42
# 소수 출력
printf "Pi: %.2f\n" 3.14159
# 여러 값 출력
printf "Name: %s, Age: %d\n" "Alice" 25
실행 결과
Hello, World!
Number: 42
Pi: 3.14
Name: Alice, Age: 25
형식 지정자
지정자 | 설명 |
---|---|
%s |
문자열 |
%d |
정수 |
%f |
실수 |
%x |
16진수 |
%o |
8진수 |
%c |
문자 |
활용 예제
숫자 포맷 정렬
#!/bin/bash
printf "%-10s %5s\n" "Name" "Score"
printf "%-10s %5d\n" "Alice" 90
printf "%-10s %5d\n" "Bob" 75
실행 결과
Name Score
Alice 90
Bob 75
echo와 printf 비교
특징 | echo | printf |
---|---|---|
사용 간편성 | 매우 간단 | 약간 복잡 |
포맷 제어 | 제한적 | 정밀한 제어 가능 |
특수 문자 지원 | 옵션 필요 (-e) | 기본 지원 |
선택 가이드
- 간단한 출력:
echo
- 정밀한 형식 제어:
printf
3. 실전 예제: 사용자 입력과 출력
사용자 입력 받기
#!/bin/bash
# 사용자로부터 이름 입력받기
echo -n "Enter your name: "
read name
# 출력하기
printf "Hello, %s!\n" "$name"
실행 결과
Enter your name: John
Hello, John!
마무리
echo
와 printf
는 Bash Shell Script에서 가장 기본적이고 자주 사용되는 출력 명령어입니다. 간단한 작업에는 echo
를, 포맷 지정이 필요한 경우에는 printf
를 사용하면 효율적으로 스크립트를 작성할 수 있습니다.
반응형
'Linux Bash shell script' 카테고리의 다른 글
Shell Script 파일 권한 설정과 실행 방법 (0) | 2025.01.16 |
---|---|
Shell Script 실행 환경 설정 (0) | 2025.01.15 |
Shell Script의 용도와 장점 (0) | 2025.01.14 |
Linux Shell의 개념과 종류 소개 (0) | 2025.01.13 |