diff --git a/automatic-file-deleter.py b/automatic-file-deleter.py new file mode 100644 index 0000000..23b360c --- /dev/null +++ b/automatic-file-deleter.py @@ -0,0 +1,39 @@ +import sys +from os import listdir +from os.path import isfile, join + +directory = input("Which directory should be scanned.\n") + +try: + files = [f for f in listdir(directory) if isfile(join(directory, f))] +except FileNotFoundError: + print("This directory doesn't exist.") + sys.exit(-1) + +file_type_delete = input("Files from which type should be deleted? [.xyz]\n") + +relevant_files = [] +for i in files: + if i[-len(file_type_delete):] == file_type_delete: + relevant_files.append(i) + +files_to_rm = [] +for file in relevant_files: + name = file[:-len(file_type_delete)] + fitting_file_exists = False + for _file in files: + if _file != file and (name == _file[:len(name)] and _file[len(name)] == "."): + fitting_file_exists = True + if not fitting_file_exists: + files_to_rm.append(file) + +directory_str_has_slash = directory[-1] == "/" +if not directory_str_has_slash: + directory += "/" +rm_string = "rm" +for i in files_to_rm: + rm_string += " " + directory + i + +print("You can run the following command to delete all the files:") +print(rm_string) +print("This will delete the following files: " + str(files_to_rm))