ඉහත පිළිතුරු සම්පූර්ණ කිරීම සඳහා පයිතන් 3.5 විකල්ප කිහිපයක් පමණි. (මම ඔවුන් මෙහි සොයා ගැනීමට කැමතියි).
import os
import shutil
from send2trash import send2trash # (shutil delete permanently)
ෆෝල්ඩරය හිස් නම් මකන්න
root = r"C:\Users\Me\Desktop\test"
for dir, subdirs, files in os.walk(root):
if subdirs == [] and files == []:
send2trash(dir)
print(dir, ": folder removed")
මෙම ගොනුව එහි තිබේ නම් ෆෝල්ඩරයද මකන්න
elif subdirs == [] and len(files) == 1: # if contains no sub folder and only 1 file
if files[0]== "desktop.ini" or:
send2trash(dir)
print(dir, ": folder removed")
else:
print(dir)
.srt හෝ .txt ගොනුව (ය) පමණක් අඩංගු නම් ෆෝල්ඩරය මකන්න
elif subdirs == []: #if dir doesn’t contains subdirectory
ext = (".srt", ".txt")
contains_other_ext=0
for file in files:
if not file.endswith(ext):
contains_other_ext=True
if contains_other_ext== 0:
send2trash(dir)
print(dir, ": dir deleted")
ෆෝල්ඩරයේ ප්රමාණය 400kb ට වඩා අඩු නම් මකන්න:
def get_tree_size(path):
"""Return total size of files in given path and subdirs."""
total = 0
for entry in os.scandir(path):
if entry.is_dir(follow_symlinks=False):
total += get_tree_size(entry.path)
else:
total += entry.stat(follow_symlinks=False).st_size
return total
for dir, subdirs, files in os.walk(root):
If get_tree_size(dir) < 400000: # ≈ 400kb
send2trash(dir)
print(dir, "dir deleted")