मुझे खाली निर्देशिकाओं को हटाने में समस्या हो रही है। यहाँ मेरा कोड है:
for dirpath, dirnames, filenames in os.walk(dir_to_search):
//other codes
try:
os.rmdir(dirpath)
except OSError as ex:
print(ex)
तर्क dir_to_search
यह है कि मैं उस निर्देशिका को पारित कर रहा हूं जहां काम करने की आवश्यकता है। यह निर्देशिका इस तरह दिखती है:
test/20/...
test/22/...
test/25/...
test/26/...
ध्यान दें कि उपरोक्त सभी फ़ोल्डर खाली हैं। जब मैं इस स्क्रिप्ट को चलाता है 20
, तो 25
अकेला डिलीट हो जाता है! लेकिन फ़ोल्डर 25
और 26
हटाए नहीं गए हैं, भले ही वे खाली फ़ोल्डर हैं।
संपादित करें:
मुझे जो अपवाद मिल रहे हैं, वे हैं:
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/29'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/29/tmp'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/28'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/28/tmp'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/26'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/25'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/27'
[Errno 39] Directory not empty: '/home/python-user/shell-scripts/s3logs/test/2012/10/27/tmp'
मैं कहां गलती कर रहा हूं?
rmdir /path/to/25th/folder
की पूरी निर्देशिका को हटा रहा है। जिसका अर्थ है कि निर्देशिका एक खाली है!