I wanted to delete a large number of .SRT files from some TV shows I had. (Sub-title files)
Going through each folder + selecting the files individually is tedious.
I wrote this bit of code, with the help of this Stack Overflow question.
Save this to the directory you want to delete the files from.
python remove_srt.py extension1 extension2
For example, to remove all JPG, TXT and PNG files:
python remove_srt.py jpg txt png
Script is here:
import sys import os num_deleted = 0 num_skipped = 0 def scandirs(path, extensions): global num_deleted global num_skipped for root, dirs, files in os.walk(path): for currentFile in files: print("processing file: " + currentFile) if any(currentFile.lower().endswith(ext) for ext in extensions): os.remove(os.path.join(root, currentFile)) print("{} deleted".format(os.path.join(root, currentFile))) num_deleted += 1 else: num_skipped += 1 if __name__ == '__main__': extensions = [] for arg in sys.argv[1:]: extensions.append(arg) path = os.getcwd() scandirs(path, extensions) print("{} files deleted".format(num_deleted)) print("{} files skipped".format(num_skipped))
Dec 2017 update
Oh boy, how time flies and how we learn. I’ll get a post up in early 2018 with a better way of doing this.