2013-07-25 4 views
3

최대 절전 모드에서 깨어 나면 실행 (또는 단어를 변경 한 경우에는 그 자체를 종료) 다음과 잠시 후 깨워라. 명령은 watch 명령을 통해 계속해서 다시 호출됩니다.는 파이썬 스크립트가 매번 컴퓨터가 나는 리눅스 머신을 최대 절전하기 위해 콘솔에서 명령 줄을 호출 파이썬에 작은 스크립트를 작성

import os 
import time 

os.system("watch -n 20 sudo rtcwake -u -s 10 -m mem") 

따라서 pc가 다시 작동 한 후 20 초 후에 rtcwake 명령이 다시 호출됩니다. 컴퓨터가 깨어날 때마다 다른 스크립트를 실행하고 싶습니다. 이미 다른 스크립트가 있습니다. 카운트 다운입니다. 컴퓨터가 다시 종료 될 때까지 사용자에게 남은 시간을 보여주기 위해이 작업을 수행하려고합니다. 그러나 컴퓨터가 깨어 난 후에 매번 두 번째 파이썬 스크립트를 호출해야합니다.

이 아이디어가 있습니까? 커널은 APM을 사용하도록 구성되어있는 경우가

답변

3

, 당신은 당신이 때마다 시스템 전원 상태 변경 실행 일부 스크립트를 넣을 수있는 /etc/apm/resume.d 디렉토리가 있어야합니다 감사합니다.

APM을 사용하지 않는 경우 (또는이 사실을 알고 싶지 않은 경우) /etc/pm/sleep.d 또는 /usr/lib/pm-utils/sleep.d 디렉토리를 사용해보십시오.

모든 경우에, 당신은이 같은 스크립트에 넣어 수 :

#!/bin/sh 

case "$1" in 
     resume) 
       #Do what you need on resume 
       ;; 
     thaw) 
       #Do what you need on thaw 
       ;; 
     suspend) 
       #Do what you need on suspend 
       ;; 
     hibernate) 
       #Do what you need on hibernate 
       ;; 
esac 
+0

을이 경우에 나는 resume.d 파일을 사용합니다. 그래서 그 파이썬 카운터를 바로 실행하는 명령을 호출 할 것이라고 그 파일에 맞춰? – user2013394

+0

@ user2013394 : 예, 그렇습니다.하지만 항상 이력서를 가지고 있지는 않습니다. 때로는 sleep.d입니다.) –

+0

나는 둘 다 가지고 있습니다 : D. sleep.d에 세 가지 파일이 있고 이력서에 있습니다. d 하나의 파일이 있습니다. 둘 다 당신의 대답에 당신이 쓴 구조를 가지고 있습니다. – user2013394