Я пытаюсь написать некоторый код Python, который будет проходить по каждому каталогу в текущем рабочем каталоге и сообщать об общем размере (в байтах) под каждым каталогом, независимо от глубины самого каталога.
Это только для учебного проекта, я понимаю, что уже есть другие способы получить эту информацию через оболочку.Вот некоторый код, который у меня есть:
# get name of current working directory
start_directory = os.getcwd()
# create dictionary to hold the size of each folder in
# the current working directory
top_level_directory_sizes = {}
# initialize directory
for i in os.listdir(start_directory):
if os.path.isdir(i):
top_level_directory_sizes[i] = 0
# traverse all paths from current working directory
for dirpath, dirnames, filenames in os.walk(start_directory):
for f in filenames:
fp = os.path.join(dirpath, f)
#increment appropriate dictionary element: += os.path.getsize(fp)
for k,v in top_level_directory_sizes.iteritems():
print k, v
Таким образом, мы надеемся, что результат будет выглядеть примерно так:
algorithms 23,754 bytes
articles 1,234 bytes
books 123,232 bytes
images 78,232 bytes
total 226,452 bytes