Computer >> 컴퓨터 >  >> 체계 >> Linux

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

알아야 할 사항

  • 수면 사용 명령 플러스 시간; = , m = , h =시간 , 또는 d = (예:5초 5초 동안 스크립트를 일시 중지합니다.
  • 남자 수면 사용 더 많은 것을 위해.

이 기사에서는 Linux sleep 명령을 사용하여 무엇보다도 bash 스크립트를 일시 중지하는 방법을 설명합니다. 그 자체로는 sleep 명령이 별로 유용하지 않습니다. 그러나 스크립트의 일부로 여러 가지 방법으로 사용할 수 있습니다. 예를 들어, 처음에 실패한 명령을 재시도하기 전에 스크립트를 일시 중지하는 데 사용할 수 있습니다.

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

절전 명령 사용 예

다른 서버에서 다운로드한 파일을 처리하는 스크립트가 있다고 상상해 보십시오. 스크립트는 모든 파일 다운로드가 완료될 때까지 복사 프로세스를 시작하지 않아야 합니다. 다운로드 프로세스는 사용자보다 먼저 실행되는 별도의 스크립트에 의해 수행됩니다.

파일을 복사하는 스크립트에는 모든 파일이 다운로드되었는지 테스트하는 루프가 포함될 수 있습니다(복사 프로세스를 시작하기 전에 50개의 파일이 있는지 확인하여 수행).

이것은 프로세서 시간을 사용하기 때문에 스크립트를 지속적으로 테스트하는 것은 의미가 없습니다. 대신 다시 시도하기 전에 각 테스트 사이에 몇 분 동안 일시 중지할 수 있습니다. 이러한 상황에서 sleep 명령은 완벽합니다.

절전 명령 사용 방법

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

sleep 5s

The above command makes the terminal pause for 5 seconds before returning to the command line.

The sleep command requires the keyword sleep, followed by the number you want to pause and the unit of measure. 

You can specify the delay in seconds, minutes, hours, or days.

  • s: Seconds
  • m: Minutes
  • h: Hours
  • d: Days

When it comes to pausing a script for days, use a cron job to run the script at regular intervals, as opposed to having a script run in the background for days.

A cron job is a Linux command or script that you can schedule to run at a set time or day. These are useful for repeating tasks over a long period of time.

The number for the sleep command interval doesn't have to be a whole number. You can also use floating-point numbers.

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

For example, the following syntax includes a fraction of a second:

sleep 3.5s

An Example of Using the Sleep Command

The following script shows how to use the sleep command to make a terminal-based countdown clock:

#!/bin/bash
x=10
while [ $x -gt 0 ]
do
sleep 1s
clear
echo "$x seconds until blast off"
x=$(( $x - 1 ))
done

Here's how this script works:

  • The script sets the variable x to 10.
  • The while loop continues to iterate while the value of x is greater than zero.
  • The sleep command pauses the script for 1 second each time around the loop.
  • The rest of the script clears the screen each iteration, displays the message, "x seconds until blast off," and subtracts 1 from the value of x.
Linux 절전 명령을 사용하여 BASH 스크립트를 일시 중지하는 방법

Without the sleep command, the script would zoom through, and the messages would display too quickly.

How to Use Sleep Command Switches

The sleep command only has a couple of switches.

The --help switch shows the help file for the sleep command. You can achieve the same thing by using the man command as follows:

man sleep

The --version switch shows the version of the sleep command that's installed on the system.

The information returned by the --version switch is as follows:

  • Version number
  • Copyright details
  • License
  • Authors

Pause Terminal Commands with Sleep

Another good use for the sleep command is to pause commands that you type in the terminal window.

If you want, you can type two commands in a row, waiting for the first one to finish before typing the second.

However, a faster approach is to type the two commands on one line, with a sleep command between each command:

$ cd /mydirectory/ && sleep 3 && ls

How this command works:

  • The cd /mydirectory/ command changes the directory.
  • The sleep 3 command waits three seconds for the cd command to finish.
  • The ls command executes and displays the directory contents.

For a simple example like this, the sleep command only saves a little bit of time. However, if you have a long list of commands, the ability to type the commands on one line saves time.