使用Python编写一个简单的文件备份工具
发布时间:2023-12-04 14:04:10
文件备份工具是用来将指定的文件或目录进行备份的工具。下面是一个使用Python编写的简单文件备份工具的示例代码:
import shutil
import os
import datetime
def backup_file(source, destination):
if not os.path.exists(destination):
os.makedirs(destination)
# 生成备份文件名
date_time = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
backup_file_name = os.path.join(destination, f"{date_time}.bak")
try:
shutil.copy2(source, backup_file_name)
print(f"文件备份成功,备份文件名:{backup_file_name}")
except FileNotFoundError:
print(f"文件不存在:{source}")
except Exception as e:
print(f"文件备份失败:{str(e)}")
# 使用示例
if __name__ == "__main__":
# 要备份的文件路径
source_file = "source.txt"
# 备份文件存放路径
backup_folder = "./backup"
backup_file(source_file, backup_folder)
上述代码中,backup_file函数用于备份文件。它接收两个参数,source是要备份的文件或目录的路径,destination是备份文件存放的文件夹路径。函数首先判断备份文件夹是否存在,如果不存在则创建。然后,使用datetime模块生成当前时间作为备份文件名,并将备份文件名与目标文件夹路径拼接得到完整的备份文件路径。随后,利用shutil模块的copy2函数进行文件备份操作,将源文件复制到备份文件路径下。最后,打印备份结果。
在示例的if __name__ == "__main__"语句块中,我们指定了要备份的源文件路径,以及备份文件存放的文件夹路径。运行时,会将源文件备份到指定的文件夹中,并输出备份结果。
运行示例代码后,会在指定的./backup文件夹下生成一个备份文件,文件名类似于20221231235959.bak,其中的数字代表备份文件生成的日期和时间。如果需要备份多个文件,可以多次调用backup_file函数即可。如果源文件不存在,则会输出相应的错误信息。
