Windowsの電源ショートカットを一通り作成するPythonスクリプト
だいぶ前に作ったやつ発掘したからアップしてみる。 ネットで調べながら作ったと思う。
import subprocess
import re
import winshell
# 取得:既存の電源設定
powercfgs = subprocess.check_output('powershell -Command powercfg /L', shell=True).decode("shift_jis", errors="surrogateescape")
print(powercfgs)
# 分割:改行文字
powercfgs = powercfgs.split('\r\n')
# print(powercfgs)
# 初期化:GUIDを含む文字列
str_guids = []
# 取得:'GUID'を含む文字列
for val in powercfgs:
if('GUID' in val) == True:
str_guids.append(val)
str_l_target = '電源設定の GUID: '
str_r_reg = r' (.*).*'
str_r_after = ''
# 初期化:電源プランdict
dict_plans ={}
# 整形:電源プラン
for val in str_guids:
guid = val.lstrip(str_l_target)
guid = re.sub(str_r_reg, str_r_after, guid)
plan_name = re.sub(r'電.*\(', '', val)
plan_name = re.sub(r'\).*', '', plan_name)
dict_plans[guid] = plan_name
print(dict_plans)
# 書込:ショートカットファイル
for key, val in dict_plans.items():
path = './' + val
with winshell.shortcut(path) as link:
link.path = "C:\Windows\System32\powercfg.exe"
link.description = val
link.arguments = '-setactive ' + key
link.working_directory = val