微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何尾部位于压缩的tar文件中的文件的最后n行

如何解决如何尾部位于压缩的tar文件中的文件的最后n行

Ubuntu 16.04
Bash 4.4.20

我想拖尾tar.gz文件sql文件的最后30行。我注意到由于文件锁定,sql备份失败。与其让我解压缩整个压缩文件,不如简单地拖尾sql备份,然后对某些短语进行grep。

StackOverflown Thread解释说压缩文件无法做到这一点。这是否也适用于这样创建的tar文件

tar czf name.tar.gz foldername  

如果在其他主题中对此进行了解释,请删除主题,我将继续搜索

解决方法

您可以使用tar的-O选项来打印文件内容,然后使用| (pipe),可以应用基本的unix操作,例如tail:

tar zxvf name.tar.gz <file_to_read> -O | tail

示例命令,读取文件A1.txt的最后两行

tar zxvf B.tar.gz B/A1.txt -O | tail -2

这里B是我执行过tar命令的目录,它包含许多文件以及文件A1.txt

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。