분과 초로 수면을 사용하십시오


16

5 분 동안 5m의 수면을 사용하는 방법을 알고 있습니다.

7 분 30 초 동안 어떻게 사용합니까?

답변:


32

로부터 :

두 개 이상의 인수가 제공되면 해당 값의 합계로 지정된 시간 동안 일시 중지하십시오 .

그래서:

sleep 7m 30s

2
니스, 나는 맨 페이지를 더 신중하게 읽어야한다.
Ravexina

4
이것이 bash내장 및 GNU sleep 동작 이라는 점에 주목할 가치가 있습니다. POSIXly, sleep정수를 초 단위로 이해하기
만하면

17

이를 수행하는 다른 방법은 다음과 같습니다.

sleep 7.5m

man sleep

NUMBER가 정수가 필요한 대부분의 구현과 달리 여기서 NUMBER는 임의의 부동 소수점 수일 수 있습니다.


10

이미 두 가지 훌륭한 답변이 있지만 조금 확장하고 싶습니다. 아래 명령을 복사하여 터미널에 붙여 넣으십시오.

$ sleep 3d 5h 7m 30.05s &
[1] 7321

그러면 3 일, 5 시간, 7 분 및 30.05 초 동안 절전 상태가되는 두 번째 프로세스가 시작됩니다. 7321내 경우에는 프로세스 ID (PID)가 있습니다.

PID 사용을 확인하려면

$ ps aux | grep sleep
rick      7321  0.0  0.0  14356   660 pts/2    S    22:40   0:00 sleep 3d 5h 7m 30.05s
root     12415  0.0  0.0  14356   700 ?        S    22:41   0:00 sleep 60
rick     12500  0.0  0.0  21292   968 pts/2    R+   22:41   0:00 grep --color=auto sleep

첫 번째 항목은 우리가 관심이있는 항목입니다. 두 번째 항목은 시작시 실행중인 영구 프로그램입니다. 세 번째 항목은 grep 명령 자체에 대한 것입니다.

sleepPID에 의해 생성 된 명령 에 남은 시간 (초)이 얼마 인지 확인하려면7321 다음을 사용할 수 있습니다 . 명령:

$ remaining_sleep_time 7321
277304.05
$ remaining_sleep_time 7321
277296.05
$ remaining_sleep_time 7321
277262.05

~/.bashrc파일에 포함시킬 수있는 명령 코드 :

remaining_sleep_time() { # arg: pid
  ps -o etime= -o args= -p "$1" | perl -MPOSIX -lane '
    %map = qw(d 86400 h 3600 m 60 s 1);
    $F[0] =~ /(\d+-)?(\d+:)?(\d+):(\d+)/;
    $t = -($4+60*($3+60*($2+24*$1)));
    for (@F[2..$#F]) {
      s/\?//g;
      ($n, $p) = strtod($_);
      $n *= $map{substr($_, -$p)} if $p;
      $t += $n
    }
    print $t'
}

남은 시간이 작동하지 않습니다. andy @ 7_ ~ $ 나머지
_sleep_time

1
링크에 remaining_sleep_time따라 @ fixit7을 ~/.bashrc파일에 복사해야 합니다. 코드를 bash 스크립트 파일에 넣을 수도 있습니다.
WinEunuuchs2Unix

5

명령 절전은 항상 초 단위로 계산됩니다. ((7x60) +30) 초를 사용한 다음 간단히 입력 할 수 있습니다.

수면 450


3
언급 한 바와 같이 이전 , 잠은 참으로 항상 초를 이해하지만, GNU의 수면과 배쉬 쉘 (하지 않도록 KSH 및 zsh을 약)의 경우 - 다른 답변에서 언급 한 바와 같이 그 또한 편지 인수를 할 수 있습니다. 쉘 산술 확장을 사용하면 답을 개선 sleep $((60*7))할 수 있으므로 몇 분 동안 사용할 수 있습니다.
Sergiy Kolodyazhnyy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.