From 34686ff99a910c8c4998832fa5c7bb9e4d2020ab Mon Sep 17 00:00:00 2001 From: Tim Keller Date: Fri, 12 Sep 2025 22:26:28 -0500 Subject: rm rmduppic script --- video/rmduppic | 67 ---------------------------------------------------------- 1 file changed, 67 deletions(-) delete mode 100755 video/rmduppic diff --git a/video/rmduppic b/video/rmduppic deleted file mode 100755 index 6fdc18d..0000000 --- a/video/rmduppic +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/env python3 -import os -import subprocess - -def sizeinbytes(size, unit): - mag = {'KiB' : 1, 'MiB': 2, 'GiB' : 3} - return float(size) * (1000 ** mag[unit]) - -# Run czkawka_cli on the current directory -cwd = os.getcwd() -print("Running czkawa for directory ", cwd, "...", sep="") -czkawka = ["czkawka_cli", "image", "-d", cwd] -czkawkadata = subprocess.run(czkawka, stdout=subprocess.PIPE) -czkawkadata = czkawkadata.stdout.decode('utf-8').splitlines() # Convert to a normal string and split into lines -if not czkawkadata: - print("All images in", cwd, "are unique. Exiting...") - exit() - -# Get number of images total and remove first line since it would cause issues -numimages = int(czkawkadata[0].split()[1]) -print ("Done!", numimages, "duplicate images found...") -czkawkadata.pop(0) - -# Split czkawkadata by the delimeter used by czkawka_cli -czkawkadata = [i.split(' - ') for i in czkawkadata] - -# Make keep store the images we want to keep -largest = 0 -i = 0 -dups = 0 -keep = [None] * numimages -for image in czkawkadata: - if not image[0]: - largest = 0 - i += 1 - continue - dups += 1 - size = image[2].split() - size = sizeinbytes(size[0], size[1]) # Convert to bytes so we can easily compate kb vs mb vs gb - if size > largest: - largest = size - keep[i] = image - -# Remove all empty entries from czkawkadata -czkawkadata[:] = [x for x in czkawkadata if x[0]] - -# Remove any images we're keeping from czkawkadata to be left with only the duplicates -for image in keep: - czkawkadata.remove(image) - -# User actions -confirmation = None -message = "Are you sure you want to delete all " + str(dups - len(keep)) + " duplicate images? (Yes/No/Show) " -while not confirmation: - confirmation = input(message) - if (confirmation == "yes"): - for image in czkawkadata: - os.remove(image[0]) - print("Removed image", image[0]) - elif (confirmation == "no"): - exit() - elif (confirmation == "show"): - for image in czkawkadata: - print(image) - confirmation = None # Prompt again - else: - confirmation = None -- cgit v1.2.3