Linux의 Bash 쉘 스크립트에서 sleep으로 일정 시간 쉬는 방법을 소개합니다.
1. Syntax
sleep 명령어는 인자로 입력된 시간만큼 sleep합니다.
sleep 'time'
시간은 다음과 같이 숫자 + s/m/h
로 정의할 수 있습니다. 기본적으로 단위가 second이기 때문에 1
을 입력하면 1s
로 처리됩니다.
- 1s : 1초를 의미
- 1m : 1분을 의미
- 1h : 1시간을 의미
- 10m 10s : 10분 10초를 의미
- 1h 10m 10s : 1시간 10분 10초를 의미
2. sleep 예제
아래 예제는 3초 sleep하는 예제입니다. 시간을 함께 출력하여 sleep이 잘 동작했는지 확인할 수 있습니다.
#!/bin/bash
time=`date +"%H:%M:%S"`
echo "Start at $time"
echo "wait for 3 seconds"
sleep 3s
time=`date +"%H:%M:%S"`
echo "Finish at $time"
Output:
$ bash example.sh
Start at 11:08:00
wait for 3 seconds
Finish at 11:08:03
date의 자세한 사용 방법은 Bash Shell - 날짜, 시간 가져오기를 참고해주세요.
3. sleep 예제
다음과 같이 1m 10s
처럼 다른 단위의 시간 조합으로 sleep할 수도 있습니다.
#!/bin/bash
time=`date +"%H:%M:%S.%3N"`
echo "Start at $time"
echo "wait for 1m 10s seconds"
sleep 1m 10s
time=`date +"%H:%M:%S.%3N"`
echo "Finish at $time"
4. sleep 예제
아래 예제는 0.1초 sleep하는 예제입니다. 기본적으로 시간 단위가 second이기 때문에, 1초 미만의 시간을 쉴 때는 0.1s
처럼 소수로 시간을 표현하시면 됩니다.
#!/bin/bash
time=`date +"%H:%M:%S.%3N"`
echo "Start at $time"
echo "wait for 0.1 seconds"
sleep 0.1s
time=`date +"%H:%M:%S.%3N"`
echo "Finish at $time"
Output:
$ bash example.sh
Start at 11:21:25.326
wait for 0.1 seconds
Finish at 11:21:25.430
5. sleep 예제
다음은 반복문에서 sleep을 사용한 예제입니다. 동일한 시간 간격으로 반복문에서 어떤 작업을 처리할 수 있습니다.
#!/bin/bash
a=0
while [ "$a" -lt 5 ]
do
echo "Do something at $(date +"%H:%M:%S")"
sleep 3
a=$(expr $a + 1)
done
Output:
$ bash example.sh
Do something at 11:13:12
Do something at 11:13:15
Do something at 11:13:18
Do something at 11:13:21
Do something at 11:13:24
6. References
Loading script...
Related Posts
- Bash Shell - 문자열에서 마지막 문자 N개 제거
- Bash Shell - 문자열에서 첫번째 문자 N개 제거
- Bash Shell - 실행 시간 측정 방법
- Bash Shell - 나눗셈에서 버림, 올림, 반올림 처리
- Bash Shell - 숫자가 양수인지 음수인지 확인하는 방법
- Bash Shell - 자신의 스크립트 파일 이름 가져오기
- Bash Shell - 문자열 출력 방법(echo, printf)
- Bash Shell - seq 명령어로 반복문 구현 및 예제
- Bash Shell - File 테스트 연산자
- Bash Shell - 무한 루프 (Infinite loop)
- Bash Shell - 숫자 비교 연산자
- Bash Shell - 문자열 비교 연산자
- Bash Shell - 대문자, 소문자로 변환 (Uppercase, Lowercase)
- Bash Shell - 스트립트를 root로 실행했는지 확인
- Bash Shell - 명령어 실행 결과를 변수에 저장
- Bash Shell - select로 선택 메뉴 구현
- Bash Shell - 변수가 정의되었는지 확인하는 방법
- Bash Shell - sleep 함수, 특정 시간 멈추기
- Bash Shell - 파일이 존재하는지 확인
- Bash Shell - 문자열 자르기 (substring, split)
- Bash Shell - 날짜, 시간 가져오기
- Bash Shell - Case 조건문
- Bash Shell - 파일 읽는 방법
- Bash Shell - 사용자로부터 입력 받기
- Bash Shell - 문자열을 연결하는 방법
- Bash Shell - 파일 생성 및 문자열 추가
- Bash Shell - 숫자 변수 증가/감소 시키기
- Bash Shell - 배열 할당, 길이, 객체 포함 여부 확인
- Bash Shell - 문자열 비교, 문자열 포함 여부 확인
- Bash Shell - 변수 선언, 할당
- Bash Shell - 조건문(if-else)
- Bash Shell - 숫자 연산 (더하기, 빼기, 곱하기, 나누기)
- Bash Shell - 반복문(for, while, until loop)
- Bash Shell - Command Line으로 전달된 인자 받기
- Bash Shell - 함수(Function)