Tôi đang gặp vấn đề với việc xóa các thư mục trống. Đây là mã của tôi:
for dirpath, dirnames, filenames in os.walk(dir_to_search):
//other codes
try:
os.rmdir(dirpath)
except OSError as ex:
print(ex)
Đối số dir_to_searchlà nơi tôi đi qua thư mục nơi công việc cần được thực hiện. Thư mục đó trông như thế này:
test/20/...
test/22/...
test/25/...
test/26/...
Lưu ý rằng tất cả các thư mục trên đều trống. Khi tôi chạy kịch bản này các thư mục 20, 25một mình bị xóa! Nhưng các thư mục 25và 26không bị xóa, mặc dù chúng là các thư mục trống.
Biên tập:
Ngoại lệ mà tôi nhận được là:
[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'
Tôi đang phạm sai lầm ở đâu?
rmdir /path/to/25th/folderxóa toàn bộ thư mục. Có nghĩa là thư mục đó là một cái trống!