Python延时关机

无聊中。晚上开着电脑睡觉,想在一段时间后关机。就写了个小程序。

# -*- coding:utf8 -*-
# This program is created for auto power off my windows :)
# Author: fengxing
# Data: 2011-8-30

import sys
import os
import time
from datetime import datetime

def Usage():
	print 'Usage:', os.path.basename(__file__), '[-t HH:MM] | delata{h|m}'

# shutdown computer after time_diff seconds
def shutdown(time_diff):
	assert time_diff > 0
	time.sleep(time_diff)
	os.system('shutdown -s -f -t 60')

def main():
	timeto = -1;
	if len(sys.argv) == 2:
		dat = sys.argv[1]
		if dat.endswith('h'):
			timeto = int(dat[0:-1]) * 3600
		elif sys.argv[1].endswith('m'):
			timeto = int(dat[0:-1]) * 60
	elif len(sys.argv) == 3 and sys.argv[1] == '-t':
		tm = sys.argv[2].split(':')
		if len(tm) == 2:
			now = datetime.today()
			ends = datetime(now.year, now.month, now.day,
					int(tm[0]), int(tm[1]))
			timeto = (ends - now).seconds	#don't care about day
	
	if timeto < 0:
		Usage()
		exit(1)
	
	print 'sleep', timeto
	shutdown(timeto)

if __name__ == '__main__':
	main()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值