用python编写程序,实现一个具有备份文件与文件夹功能的备份工具
时间: 2024-12-18 15:17:49 浏览: 6
在Python中编写一个备份工具,可以使用os模块来操作文件和目录,以及shutil模块来复制文件和创建目录。下面是一个简单的例子,展示了如何实现基础的备份功能:
```python
import os
import shutil
class BackupTool:
def __init__(self, source_dir, backup_dir):
self.source_dir = source_dir
self.backup_dir = backup_dir + "_" + datetime.datetime.now().strftime("%Y%m%d_%H%M%S")
def create_backup_directory(self):
if not os.path.exists(self.backup_dir):
os.makedirs(self.backup_dir)
def copy_files_and_folders(self):
for item in os.listdir(self.source_dir):
src_path = os.path.join(self.source_dir, item)
dst_path = os.path.join(self.backup_dir, item)
# 检查是否是文件还是目录
if os.path.isfile(src_path):
shutil.copy2(src_path, dst_path) # 使用copy2进行原子复制,保留元数据
elif os.path.isdir(src_path):
shutil.copytree(src_path, dst_path)
# 使用示例
backup_tool = BackupTool("/path/to/source", "/path/to/backup")
backup_tool.create_backup_directory()
backup_tool.copy_files_and_folders()
阅读全文