Python script для прокрутки всех файлов в каталоге, удалите все, размер которых меньше 200 КБ
Я хочу удалить все файлы в папке размером менее 200 КБ.
Просто хочу быть здесь, когда я делаю ls -la на моей macbook, размер файла говорит 171 или 143, я предполагаю, что это kb правильно?
Ответ 1
Это каталог и все подкаталоги:
import os, os.path
for root, _, files in os.walk(dirtocheck):
for f in files:
fullpath = os.path.join(root, f)
if os.path.getsize(fullpath) < 200 * 1024:
os.remove(fullpath)
Или:
import os, os.path
fileiter = (os.path.join(root, f)
for root, _, files in os.walk(dirtocheck)
for f in files)
smallfileiter = (f for f in fileiter if os.path.getsize(f) < 200 * 1024)
for small in smallfileiter:
os.remove(small)
Ответ 2
вы также можете использовать find
find /path -type f -size -200k -delete
Ответ 3
Вы также можете использовать
import os
files_in_dir = os.listdir(path_to_dir)
for file_in_dir in files_in_dir:
#do the check you need on each file
Ответ 4
Обычно ls -la находится в байтах.
Если вы хотите его в форме "читаемый человеком", используйте команду ls -alh.