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.