2011-05-01 54 views
4

我有目录/ home/user1,user2。 我想遍历所有用户名home dir,然后制作tar.gz文件,然后将其存储在/ backups目录中。如何使用python进行tar备份

我新的Python很困惑如何启动

回答

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() 
+0

感谢哥们,我会尝试,如果我有很多子目录和文件,它会工作。我的意思是我想为'/home/user1.tar.gz,/ home/user2.tar.gz'分开备份 – Mahakaal 2011-05-02 06:06:54