将.txt文件从.tar.gz文件复制到其他目录

玛莎

我正在尝试从压缩文件中复制所有.txt文件(此文件具有unknown_name_folders):.txt文件位置---> my_path /?unknown_name_folder?/file.txt我想做---> my_path / file。文本

我做了这段代码,但是出现了这个错误:EOFError:压缩文件在到达流结束标记之前结束。任何的想法?

file=my_path+"/"+fil
if file.endswith('.tar.gz'):

    tarf = tarfile.open(file, "r:gz")
    for info in tarf:

        if info.name.endswith('.txt'):
            print(info.name)

            tar = tarfile.open(file) #extracting
            tar.extractall()
            tar.close()    
            code=os.system('cp ' + my_path+'/'+info.name +' '+ file)
simon3270

如Paulo所述,您在第二次打开tar文件时错过了“ gz”标志。另外,您复制文件的目标是原始的tarball-我假设您希望将其放在单独的目录中(此处为“ targdir”)

您只需要提取一次内容,因此代码变为:

file=my_path+"/"+fil
targdir='dest'
if file.endswith('.tar.gz'):

    tarf = tarfile.open(file, "r:gz")
    tarf.extractall()
    for info in tarf:

        if info.name.endswith('.txt'):
            print(info.name)
            code=os.system('cp ' + info.name +' '+ targdir)

(编辑-您不需要在“ cp”命令中使用“ mypath”-您已将压缩包解压缩到当前目录中,因此“ info.name!”是文件的完整路径)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法将目录文件复制到其他目录

将特定文件复制到其他目录

将版本化文件复制到其他目录

将解压缩的tar.gz复制到单个文件

使用 CMD 将 htm 及其支持的文件和目录复制到其他目录

如何将目录层次结构(省略文件)复制到其他目录中?

将多个文件从一个目录复制到多个其他目录

如何使用shell或python将目录中的许多文件复制到许多其他目录

使用Azure Data Factory将头文件从txt文件复制到其他csv文件

使用其他名称将文件复制到同一目录

将非 DLL 文件复制到其他项目的所有输出目录

来自将文件复制到其他目录的简单脚本的输入出现问题

将tar.gz文件从S3下载/复制到EC2

将文件内容复制到其他位置

将源文件复制到其他 TFS

使用pathlib根据file.name将文件从子目录复制到其他子目录

是否可以将zip和tar.gz文件作为目录集成到文件系统中

如何在同步或构建期间将资源文件从其他目录复制到Android项目中?

将文件复制到最新目录

将文件复制到目录?

创建一个扫描.txt文件的批处理文件(或其他文件?),然后将指定的文本复制到另一个.txt文件

Java 文件复制 - 如何将输入文件备份/复制到其他目标位置?

Android:将tar文件从资产复制到sdcard-IOException

无法使用tar / pigz将所有输出复制到文件

将文件名目录复制到 .txt 文件的脚本

tar目录,以将文件归档到要压缩的目录中

将文件复制到其他位置并同时更改文件名

如何将数据从csv文件复制到其他Excel文件

将文件复制到其他文件夹-查找