image/svg+xml
FREE PALESTINE

OS.walk _ امثلة بايثون

تحتوي لغة Python على وظيفة مدمجة رائعة في وحدة نظام التشغيل تسمى os.walk ().

OS.Walk ()

OS.walk () يقوم بإنشاء أسماء الملفات في شجرة الدليل عن طريق السير في الشجرة إما من أعلى إلى أسفل أو من أسفل إلى أعلى.

لكل دليل في الشجرة متجذر في أعلى الدليل (بما في ذلك الجزء العلوي نفسه) ، فإنه ينتج 3-tuple (dirpath ، dirnames ، filenames).

مسارات


root :	Prints out directories only from what you specified
dirs :	Prints out sub-directories from root. 
files:  Prints out all files from root and directories
Code language: JavaScript (javascript)

عمل سيناريو

بعد الحصول على هذه المعلومات ، يمكننا إنشاء نص برمجي بسيط يفعل ذلك بالضبط. سيقوم هذا البرنامج النصي بطباعة جميع الدلائل والأدلة الفرعية والملفات من المسار الذي حددته (/ var / log)

import os
print "root prints out directories only from what you specified"
print "dirs prints out sub-directories from root"
print "files prints out all files from root and directories"
print "*" * 20
for root, dirs, files in os.walk("/var/log"):
    print root
    print dirs
    print files
Code language: PHP (php)

باستخدام getsize

يمتد المثال الثاني إلى المثال الأول مع إظهار مقدار ما يستهلكه كل ملف باستخدام وظيفة getize.

print "This is using getsize to see how much every file consumes"
print "---------------"
from os.path import join, getsize
for root, dirs, files in os.walk('/tmp'):
    print root, "consumes",
    print sum([getsize(join(root, name)) for name in files]),
    print "bytes in", len(files), "non-directory files"
Code language: PHP (php)

لا يوجد اعجابات