Linux "sleep"명령을 사용하여 BASH 스크립트를 일시 중지하는 방법

이 안내서는 Linux sleep 명령을 사용하여 bash 스크립트를 일시 정지하는 f}을 보여줍니다.

자체적으로 sleep 명령은 터미널 창을 잠그지 않는 한 완전히 쓸모가 없지만 명령의 재 시도 전에 일시 정지 요인을 포함하여 여러 가지 다른 방법으로 사용할 수있는 스크립트의 일부로 사용할 수 있습니다.

예를 들어 다른 서버에서 복사 한 파일을 처리하는 스크립트가 있다고 가정 해보십시오. 모든 파일의 다운로드가 완료 될 때까지 스크립트는 복사 프로세스를 시작하지 않아야합니다.

다운로드 프로세스는 완전히 별도의 스크립트로 수행됩니다.

파일을 복사하는 스크립트는 모든 파일이 다운로드되었는지 (즉, 50 개의 파일이 있어야하고 50 개의 파일이 발견되면 복사 프로세스가 시작되었음을 알 수 있음) 테스트하는 루프를 포함 할 수 있습니다.

스크립트가 프로세서 시간을 차지하기 때문에 지속적으로 테스트 할 필요가 없습니다. 대신 복사 된 파일이 충분한 지, 몇 분 동안 일시 중지 한 다음 다시 시도할지 여부를 테스트 할 수 있습니다. 수면 명령은 이러한 상황에서 완벽합니다.

sleep 명령을 사용하는 방법

Linux sleep 명령을 사용하려면 터미널 창에 다음을 입력하십시오.

수면 5s

위의 명령은 터미널을 명령 줄로 되돌리기 전에 5 초 동안 일시 중지합니다.

sleep 명령은 sleep 키워드와 그 다음에 일시 중지 할 숫자를 입력 한 다음 측정 단위를 요구합니다.

지연을 초, 분, 시간 또는 일 단위로 지정할 수 있습니다.

어떤 일이 생길 때까지 기다리는 날에는 끝날 동안 백그라운드에서 스크립트를 실행하는 것과 달리 일정한 간격으로 스크립트를 실행하기 위해 cron 작업을 사용하는 것이 좋습니다.

절전 명령의 번호는 정수일 필요는 없습니다.

부동 소수점 숫자를 사용할 수도 있습니다.

예를 들어 다음 구문을 사용하는 것이 좋습니다.

수면 3.5s

수면 명령에 대한 예제 사용

다음 스크립트는 sleep 명령을 사용하여 터미널 기반 카운트 다운 시계를 만드는 방법을 보여줍니다.

#! / bin / bash

x = 10

반면 [$ x -gt 0]

해야 할 것

수면 1s

명확한

echo "blast off 할 때까지 $ x 초"

x = $ (($ x - 1))

끝난

스크립트는 변수 x를 10으로 설정합니다. while 루프는 x의 값이 0보다 큰 동안 반복을 계속합니다.

sleep 명령은 루프를 돌 때마다 스크립트를 1 초 동안 일시 중지합니다.

스크립트의 나머지 부분은 각 반복을 화면에서 지우고 "x 초부터 블라스트 오프"(즉 10 초) 메시지를 표시 한 다음 x 값에서 1을 뺍니다.

sleep 명령을 사용하지 않으면 스크립트가 확대되어 메시지가 너무 빨리 표시됩니다.

sleep 명령은 몇 가지 스위치 만 있습니다.

--help 스위치는 sleep 명령에 대한 도움말 파일을 표시합니다. 다음과 같이 man 명령을 사용하여 동일한 결과를 얻을 수 있습니다.

남자 수면

--version 명령은 시스템에 설치된 sleep 명령의 버전을 표시합니다.

--version 스위치가 반환하는 정보는 다음과 같습니다.