[Shell Script] sleep으로 일정 시간 멈추기
March 01, 2024
shell script에서 sleep을 사용하여 일정 시간 코드 실행을 지연시키는 방법에 대해서 알아보겠습니다.
이 글의 예제들은 Ubuntu 20.04에서 Bash shell을 사용하여 작성되었습니다.
sleep으로 몇 초 대기
sleep N
은 N초간 대기를 합니다. 즉, 다음 코드는 수행되지 않으며, 설정된 시간이 지나면 다시 코드가 실행됩니다.
#!/bin/bash
echo "5초간 대기"
sleep 5
echo "5초 후에 실행됨"
Output:
$ bash example.sh
5초간 대기
5초 후에 실행됨
시간/분/초 단위로 sleep
아래와 같은 문법으로 특정 시간 만큼 지연시킬 수 있습니다.
sleep 1h 1m 10s # 1시간 1분 10초 대기
sleep 1m 10s # 1분 10초 대기
sleep 10s # 10초 대기
만약 0.5초 처럼, 1초보다 작은 시간을 대기해야 한다면 아래와 같이 소수점으로 표현하면 됩니다.
sleep 0.5 # 0.5초 대기
sleep 0.01 # 0.01초 대기
변수를 사용하여 대기
아래와 같이 sleep과 변수를 사용하여 일정 시간 대기시킬 수도 있습니다.
#!/bin/bash
duration=3
echo "시작"
sleep $duration
echo "${duration}초 후에 실행됨"
Output:
$ bash example.sh
시작
3초 후에 실행됨