如何使用Python创建tar备份

4 投票
2 回答
4360 浏览
提问于 2025-04-16 16:46

我有一个目录,里面有用户文件夹 /home/user1 和 /home/user2 。

我想要遍历所有用户的主目录,然后把它们打包成一个 tar.gz 文件,最后把这个文件存放到 /backups 目录里。

我刚开始学 Python,所以有点不知道该怎么着手。

2 个回答

10

这个应该可以用:

import os
import tarfile

home = '/home/'
backup_dir = '/backup/'

home_dirs = [ name for name in os.listdir(home) if os.path.isdir(os.path.join(home, name)) ]

for directory in home_dirs:
    full_dir = os.path.join(home, directory)
    tar = tarfile.open(os.path.join(backup_dir, directory+'.tar.gz'), 'w:gz')
    tar.add(full_dir)
    tar.close()

撰写回答