在开始之前,我正在尝试创建一个 python zip 脚本,它将拍摄 target_dir 的快照,将其压缩,将其保存在 temp 文件夹中,并为其指定“now”变量的文件名。这是我的代码:
#!/usr/bin/env python
import os
import sys
import datetime
now = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M")
target_dir = '/var/lib/data'
temp_dir='/tmp'
zip = zipfile.ZipFile('/tmp/example.zip', 'w', zipfile.ZIP_DEFLATED)
rootlen = len(target_dir) + 1
for base, dirs, files in os.walk(target_dir):
for file in files:
fn = os.path.join(base, file)
zip.write(fn, fn[rootlen:])
我不知道如何让这一行改为使用变量“now”和“temp_dir”而不是硬编码目的地:
zip = zipfile.ZipFile('/tmp/example.zip', 'w', zipfile.ZIP_DEFLATED)
我想我想要这样的东西(伪代码):
zip = zipfile.ZipFile('<temp_dir>/<now>.zip', 'w', zipfile.ZIP_DEFLATED)
谁能告诉我这应该怎么做?