Updated info.py
This commit is contained in:
parent
7f37bc8802
commit
1cac083916
1 changed files with 52 additions and 37 deletions
|
|
@ -68,7 +68,8 @@ def backup_file_list():
|
||||||
|
|
||||||
def backup_power_plans():
|
def backup_power_plans():
|
||||||
"""Export current power plans."""
|
"""Export current power plans."""
|
||||||
os.makedirs(r'{BackupDir}\Power Plans'.format(**global_vars), exist_ok=True)
|
os.makedirs(r'{BackupDir}\Power Plans\{Date}'.format(
|
||||||
|
**global_vars), exist_ok=True)
|
||||||
plans = run_program(['powercfg', '/L'])
|
plans = run_program(['powercfg', '/L'])
|
||||||
plans = plans.stdout.decode().splitlines()
|
plans = plans.stdout.decode().splitlines()
|
||||||
plans = [p for p in plans if re.search(r'^Power Scheme', p)]
|
plans = [p for p in plans if re.search(r'^Power Scheme', p)]
|
||||||
|
|
@ -76,22 +77,24 @@ def backup_power_plans():
|
||||||
guid = re.sub(r'Power Scheme GUID:\s+([0-9a-f\-]+).*', r'\1', p)
|
guid = re.sub(r'Power Scheme GUID:\s+([0-9a-f\-]+).*', r'\1', p)
|
||||||
name = re.sub(
|
name = re.sub(
|
||||||
r'Power Scheme GUID:\s+[0-9a-f\-]+\s+\(([^\)]+)\).*', r'\1', p)
|
r'Power Scheme GUID:\s+[0-9a-f\-]+\s+\(([^\)]+)\).*', r'\1', p)
|
||||||
out = r'{BackupDir}\Power Plans\{name}.pow'.format(
|
out = r'{BackupDir}\Power Plans\{Date}\{name}.pow'.format(
|
||||||
name=name, **global_vars)
|
name=name, **global_vars)
|
||||||
if not os.path.exists(out):
|
if not os.path.exists(out):
|
||||||
cmd = ['powercfg', '-export', out, guid]
|
cmd = ['powercfg', '-export', out, guid]
|
||||||
run_program(cmd, check=False)
|
run_program(cmd, check=False)
|
||||||
|
|
||||||
def backup_registry():
|
def backup_registry(overwrite=False):
|
||||||
"""Backup registry including user hives."""
|
"""Backup registry including user hives."""
|
||||||
extract_item('erunt', silent=True)
|
extract_item('erunt', silent=True)
|
||||||
cmd = [
|
cmd = [
|
||||||
global_vars['Tools']['ERUNT'],
|
global_vars['Tools']['ERUNT'],
|
||||||
r'{BackupDir}\Registry'.format(**global_vars),
|
r'{BackupDir}\Registry\{Date}'.format(**global_vars),
|
||||||
'sysreg',
|
'sysreg',
|
||||||
'curuser',
|
'curuser',
|
||||||
'otherusers',
|
'otherusers',
|
||||||
'/noprogresswindow']
|
'/noprogresswindow']
|
||||||
|
if overwrite:
|
||||||
|
cmd.append('/noconfirmdelete')
|
||||||
run_program(cmd)
|
run_program(cmd)
|
||||||
|
|
||||||
def get_folder_size(path):
|
def get_folder_size(path):
|
||||||
|
|
@ -368,26 +371,38 @@ def run_aida64():
|
||||||
'/TEXT', '/SILENT', '/SAFEST']
|
'/TEXT', '/SILENT', '/SAFEST']
|
||||||
run_program(cmd, check=False)
|
run_program(cmd, check=False)
|
||||||
|
|
||||||
def run_bleachbit():
|
def run_bleachbit(cleaners=None, preview=True):
|
||||||
"""Run BleachBit preview and save log.
|
"""Run BleachBit preview and save log.
|
||||||
|
|
||||||
This is a preview so no files should be deleted."""
|
If preview is True then no files should be deleted."""
|
||||||
if not os.path.exists(global_vars['LogDir']+r'\BleachBit.log'):
|
error_path = r'{}\Tools\BleachBit.err'.format(global_vars['LogDir'])
|
||||||
extract_item('BleachBit', silent=True)
|
log_path = error_path.replace('err', 'log')
|
||||||
cmd = [global_vars['Tools']['BleachBit'], '--preview', '--preset']
|
extract_item('BleachBit', silent=True)
|
||||||
out = run_program(cmd, check=False)
|
|
||||||
# Save stderr
|
# Safety check
|
||||||
if out.stderr.decode().splitlines():
|
if not cleaners:
|
||||||
with open(global_vars['LogDir']+r'\BleachBit.err', 'a',
|
# Disable cleaning and use preset config
|
||||||
encoding='utf-8') as f:
|
cleaners = ['--preset']
|
||||||
for line in out.stderr.decode().splitlines():
|
preview = True
|
||||||
f.write(line.strip() + '\n')
|
|
||||||
# Save stdout
|
# Run
|
||||||
with open(global_vars['LogDir']+r'\BleachBit.log', 'a',
|
cmd = [
|
||||||
encoding='utf-8') as f:
|
global_vars['Tools']['BleachBit'],
|
||||||
for line in out.stdout.decode().splitlines():
|
'--preview' if preview else '--clean']
|
||||||
|
cmd.extend(cleaners)
|
||||||
|
out = run_program(cmd, check=False)
|
||||||
|
|
||||||
|
# Save stderr
|
||||||
|
if out.stderr.decode().splitlines():
|
||||||
|
with open(error_path, 'a', encoding='utf-8') as f:
|
||||||
|
for line in out.stderr.decode().splitlines():
|
||||||
f.write(line.strip() + '\n')
|
f.write(line.strip() + '\n')
|
||||||
|
|
||||||
|
# Save stdout
|
||||||
|
with open(log_path, 'a', encoding='utf-8') as f:
|
||||||
|
for line in out.stdout.decode().splitlines():
|
||||||
|
f.write(line.strip() + '\n')
|
||||||
|
|
||||||
def show_disk_usage(disk):
|
def show_disk_usage(disk):
|
||||||
"""Show free and used space for a specified disk."""
|
"""Show free and used space for a specified disk."""
|
||||||
print_standard('{:5}'.format(disk.device.replace('/', ' ')),
|
print_standard('{:5}'.format(disk.device.replace('/', ' ')),
|
||||||
|
|
@ -459,7 +474,7 @@ def show_os_name():
|
||||||
def show_temp_files_size():
|
def show_temp_files_size():
|
||||||
"""Show total size of temp files identified by BleachBit."""
|
"""Show total size of temp files identified by BleachBit."""
|
||||||
size = None
|
size = None
|
||||||
with open(r'{LogDir}\BleachBit.log'.format(**global_vars), 'r') as f:
|
with open(r'{LogDir}\Tools\BleachBit.log'.format(**global_vars), 'r') as f:
|
||||||
for line in f.readlines():
|
for line in f.readlines():
|
||||||
if re.search(r'^disk space to be recovered:', line, re.IGNORECASE):
|
if re.search(r'^disk space to be recovered:', line, re.IGNORECASE):
|
||||||
size = re.sub(r'.*: ', '', line.strip())
|
size = re.sub(r'.*: ', '', line.strip())
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue