개요
sleep은 '잠재우다'라는 의미처럼, 명령어의 실행을 지정된 시간 동안 멈추게 합니다. 이 명령어는 주로 셸 스크립트에서 자동화된 작업의 실행 간격을 조절하거나, 특정 파일이 생성될 때까지 기다리는 등 시간과 관련된 제어를 할 때 사용됩니다. 초(s), 분(m), 시(h), 일(d) 단위를 지원하여 다양한 시간 단위로 대기 시간을 설정할 수 있습니다.
주요 특징
sleep 명령어의 주요 특징은 다음과 같습니다.
- 지정된 시간(초, 분, 시, 일) 동안 대기합니다.
- 스크립트에서 작업 간의 시간 간격을 조절하는 데 사용됩니다.
- 소수점 시간을 지원하여 더 세밀한 시간 제어가 가능합니다.
- 대기하는 동안 CPU 자원을 거의 사용하지 않습니다.
주요 옵션
sleep 명령어는 대기 시간을 인자로 받으며, 단위 지정을 위한 옵션은 없습니다. 대신 인자에 단위를 함께 명시합니다.
1) 실행 옵션
2) 도움말
생성된 명령어:
명령어를 조합해 보세요.
설명:
`sleep` 명령어를 실행합니다.
위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.
사용 예시
sleep 명령어의 다양한 사용 예시를 통해 기능을 익혀보세요.
3초 동안 대기
sleep 3
명령어 실행 후 3초 동안 대기합니다. 단위가 없을 경우 초로 간주합니다.
1분 30초 동안 대기
sleep 1m 30s
여러 개의 시간을 공백으로 구분하여 더할 수 있습니다. `1m`은 60초, `30s`는 30초이므로 총 90초 동안 대기합니다.
소수점 시간 사용
sleep 0.5
소수점 시간을 사용하여 0.5초 동안 대기합니다.
스크립트에서 사용
while true; do ping -c 1 google.com; sleep 5; done
스크립트 내에서 `while` 문과 함께 사용하면, 5초마다 `ping` 명령을 실행하는 작업을 만들 수 있습니다.
백그라운드에서 실행
sleep 1h &
`&` 기호를 사용하면 sleep 명령을 백그라운드에서 실행하여 터미널을 점유하지 않게 할 수 있습니다.
설치
sleep은 `coreutils` 패키지의 일부로, 대부분의 리눅스 배포판에 기본적으로 포함되어 있습니다. 별도의 설치가 필요하지 않습니다.
팁 & 주의사항
sleep 명령어 사용 시 유의할 점들을 정리했습니다.
팁
- sleep은 대기하는 동안 CPU 자원을 거의 사용하지 않으므로, 장시간 대기 작업에 적합합니다.
- `sleep 1h 30m`처럼 여러 개의 시간을 인자로 줄 수 있습니다. 이 경우, 모든 시간이 더해져서 총 대기 시간이 됩니다.
- 시간 단위(`s`, `m`, `h`, `d`)는 대소문자를 구분하지 않습니다. `5S`나 `5s`는 동일하게 5초를 의미합니다.