開始する前に、target_dir のスナップショットを取得し、zip して一時フォルダーに保存し、「now」変数のファイル名を付ける Python zip スクリプトを作成しようとしています。これは私が持っているコードです:
#!/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)
誰でもこれを行う方法を教えてもらえますか?