目录名和原始时间戳组合的tar文件

2024-06-02 06:17:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我想创建一个包含目录名和原始时间戳组合的tar文件。有这么多的文件需要转换成上述格式。在

对于下面的目录,我希望新的tar文件名是rs_jul_29_2016.tar

drwxr-xr-x   3 root root  4096 Jul 29  2016 rs

Tags: 文件目录文件名格式时间roottarjul
2条回答

使用os.stat()获取上次修改的时间,datetime将其转换为所需的字符串时间戳。在

import os
from datetime import datetime

filename = 'rs'
st = os.stat(filename)
modified_time = datetime.fromtimestamp(st.st_mtime)
tar_filename = modified_time.strftime('{}_%b_%m_%Y.tar'.format(filename))

好吧,您已经将Python和shell/sh标记为关键字,所以这里对这两个都进行了标记。在

Python

import os
import tarfile

dst = '/destination/directory/path/'
src = '/source/directory/path/'

# list current date
heute = dt.date.today().strftime('%Y%m%d_')

# assuming only have directories in current directory
for d in os.listdir(src):
    # define .tar destination filename
    dst_fn = dst + heute + d + '.tar'

    with tarfile.open(dst_fn, 'w') as fid:
        fid.add(d)

巴什

^{pr2}$

这两种方法都应该为每个感兴趣的目录创建一个tar文件。我的建议是:创建一个虚拟目录,并在实际操作之前对每个目录进行测试,以确保。。。在

相关问题 更多 >