Saya mengalami masalah dengan menghapus direktori kosong. Ini kode saya:
for dirpath, dirnames, filenames in os.walk(dir_to_search):
//other codes
try:
os.rmdir(dirpath)
except OSError as ex:
print(ex)
Argumennya dir_to_search
adalah di mana saya melewati direktori di mana pekerjaan harus dilakukan. Direktori itu terlihat seperti ini:
test/20/...
test/22/...
test/25/...
test/26/...
Perhatikan bahwa semua folder di atas kosong. Ketika saya menjalankan script ini folder 20
, 25
sendiri akan dihapus! Tetapi folder 25
dan 26
tidak dihapus, meskipun mereka folder kosong.
Edit:
Pengecualian yang saya dapatkan adalah:
[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'
Di mana saya membuat kesalahan?
rmdir /path/to/25th/folder
menghapus seluruh direktori. Yang berarti direktori itu adalah yang kosong!