diff --git a/.bin/Scripts/ddrescue-tui-menu b/.bin/Scripts/ddrescue-tui-menu index f96dec36..988ec0fa 100755 --- a/.bin/Scripts/ddrescue-tui-menu +++ b/.bin/Scripts/ddrescue-tui-menu @@ -31,13 +31,17 @@ if __name__ == '__main__': # We'll set the missing paths later pass - # Show usage? + # Show usage + if re.search(r'-*(h|help|\?)', str(sys.argv), re.IGNORECASE): + show_usage(script_name) + exit_script() + + # Start cloning/imaging if run_mode in ('clone', 'image'): menu_ddrescue(source_path, dest_path, run_mode) else: - if not re.search(r'(^$|help|-h|\?)', run_mode, re.IGNORECASE): + if not re.search(r'^-*(h|help\?)', run_mode, re.IGNORECASE): print_error('Invalid mode.') - show_usage(script_name) # Done print_standard('\nDone.') diff --git a/.bin/Scripts/functions/ddrescue.py b/.bin/Scripts/functions/ddrescue.py index 362b467f..3657bb19 100644 --- a/.bin/Scripts/functions/ddrescue.py +++ b/.bin/Scripts/functions/ddrescue.py @@ -118,7 +118,7 @@ class BlockPair(): def load_map_data(self): """Load data from map file and set progress.""" map_data = read_map_file(self.map_path) - self.rescued = map_data['rescued'] * self.size + self.rescued = map_data['rescued'] * self.size / 100 if map_data['full recovery']: self.pass_done = [True, True, True] self.rescued = self.size @@ -132,6 +132,9 @@ class BlockPair(): elif map_data['non-scraped'] > 0: self.pass_done = [True, True, False] self.status = ['Skipped', 'Skipped', 'Pending'] + else: + self.pass_done = [True, True, True] + self.status = ['Skipped', 'Skipped', 'Skipped'] def self_check(self): """Self check to abort on bad dest/map combinations."""