我正在嘗試編寫一個函數,該文件在Windows XP上備份一個具有不同權限的文件的目錄。我正在使用tarfile模塊來對目錄進行tar。目前只要程序遇到沒有讀取權限的文件,就會停止提供錯誤:IOError:[Errno 13]權限被拒絕:'文件路徑'。我希望它跳過它無法讀取的文件,而不是結束tar操作。這是我現在使用的代碼:獲取python tarfile跳過沒有讀取權限的文件
def compressTar():
"""Build and gzip the tar archive."""
folder = 'C:\\Documents and Settings'
tar = tarfile.open ("C:\\WINDOWS\\Program\\archive.tar.gz", "w:gz")
try:
print "Attempting to build a backup archive"
tar.add(folder)
except:
print "Permission denied attempting to create a backup archive"
print "Building a limited archive conatining files with read permissions."
for root, dirs, files in os.walk(folder):
for f in files:
tar.add(os.path.join(root, f))
for d in dirs:
tar.add(os.path.join(root, d))