명령 줄에서 최대 절전 모드 / 일시 중지하고 특정 시간에 어떻게 절전 모드를 해제합니까?


36

명령 줄 에서 일시 중단 / 최대 절전 모드를 어떻게 읽을 수 있습니까? 를 읽고 명령 줄에서 시스템을 일시 중단 / 최대 절전 모드로 전환하는 방법을 알아 냈습니다 . .

그러나 명령 줄을 사용하여 주어진 시간에 절대 (예 : 11PM) 또는 상대 (예 : 30 분) 용어로 일시 중단 / 최대 절전 모드로 전환하는 방법을 알고 싶습니다.

종료 로이 작업을 수행하는 방법을 이미 알고 있지만 명령이 비슷한 지 확실합니다.

답변:


43

at명령을 사용하여 해당 질문에 자세히 설명 된 명령 실행을 포함하여 모든 작업을 예약 할 수 있습니다 .

예를 들어, 30 분 후에 최대 절전 모드로 전환하려면 다음을 수행하십시오.

echo 'pmi action hibernate' | at now + 30 min

또는 오후 11시에 일시 중지하려면 다음을 수행하십시오.

echo 'pmi action suspend' | at 11pm

이 같은 명령을 실행해야하는 경우 root실행 atsudo보다는 함께 명령 자체 sudo(이후 sudo암호를 요구하지를 구성하지 않는 한에서만, 대화 형으로 실행해야합니다). 예를 들어 pm-hibernateand pm-suspend를 사용하는 위의 명령 과 동등한 것은 다음 과 같습니다.

echo pm-hibernate | sudo at now + 30 min

echo pm-suspend | sudo at 11pm


두 가지 상황을 모두 찾아 주셔서 감사합니다. 제목도 수정했습니다. 지금 두 상황을 모두 포함하도록 대답을 수정했습니다.
cprofitt

작업을 어떻게 정리할 수 있습니까?
KhoPhi

2
@Rexford이 atrm명령 은에서 만든 작업을 제거합니다 at.
Eliah Kagan

9

상대 사양 (예 : "30 분 후")의 경우 sleep명령을 사용하여 일시 중지 / 최대 절전 명령을 대기시킬 수 있습니다.


예 :

30 분 정도 기다린 다음 일시 중단하십시오.

sudo sleep 30m; sudo pm-suspend

1 시간 후에 최대 절전 모드로 전환하십시오.

sudo sleep 1h; sudo pm-hibernate

나도이 접근법을 좋아한다.
KhoPhi

2
1 시간 후 pm-hibernateroot에 대한 비밀번호를 다시 원하며 일시 중단이 발생하지 않습니다.
Vitaly Zdanevich

비밀번호를 묻지 않기 위해 루트로 로그인하는 것은 어떻습니까?
banan3'14

4

특정 시간 반복-컴퓨터 종료와 같이 매일 특정 시간입니다. cron을 사용하십시오.

crontab -e

다음을 추가하십시오.

15 14 1 * * pmi action suspend

당신이 그것을 사용자 정의하려는 경우.

* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

한 번만 우리를 at 명령

예를 들어, 30 분 후에 최대 절전 모드로 전환하려면 다음을 수행하십시오.

echo 'pmi action hibernate' | at now + 30 min

또는 오후 11시에 일시 중지하려면 다음을 수행하십시오.

echo 'pmi action suspend' | at 11pm

2
cron특정 시간 또는 특정 요일, 월 또는 연도의 특정 시간에 일시 중지 또는 최대 절전 모드를 유지하는 것이 목표 인 경우 사용 하는 것이 좋습니다. 그러나 Ederico 가 요구 한 것 (그리고 훨씬 더 바람직한 것) 인 단일 정지 또는 최대 절전 모드를 예약 하려면 at명령을 사용해야합니다. ( cron예를 들어 sedor 를 사용하여 관련 crontab을 편집하여 단일 이벤트를 예약 할 수 awk있지만 매우 복잡하고 불필요합니다 at.)
Eliah Kagan

질문에서 요청한 상대 용어에 맞지 않으며 특정 일정에만 유용합니다.
Bruno Pereira

예, 이것은 요청 된 '특정 시간'의 예입니다. "그러나, 주어진 시간에 명령 줄을 사용하여 특정 시간에 일시 중지 / 최대 절전 모드로 전환하는 방법을 알고 싶습니다 (예 : 오후 11시)"
cprofitt

1
을 사용하는 방법에 대한 정보를 추가하기 위해 답변을 편집 at했지만 추가 한 정보가 불행히도 올바르지 않습니다. <오퍼레이터는 텍스트에서 재전송 파일 또는 장치 의 왼쪽에 지정된 명령을위한 표준 입력을 오른쪽으로 지정한다. ( 내 답변 에서처럼) <대신에 사용하려면 (또는 )을 내용 으로 사용하여 파일을 만들어야합니다 . 이러한 복잡성은 여기서 더 좋습니다. |pmi action suspendpmi action hibernate|
엘리아 케이건

일반적인 지침 cat으로 |(예 :) 왼쪽에 명령 cat foo | bar이 있으면이를 <식 ( bar < foo)으로 바꿀 수 있습니다 . 그러나 echo의 왼쪽에 명령이 |있으면 사소하게 <식으로 바꿀 수 없습니다 .
Eliah Kagan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.