Linux系统中查看tar.gz中的文件明细的常用命令

 更新时间:2025年10月28日 09:02:40   作者:会飞的土拨鼠呀  
在日常运维中你可能会有几十G或者上百G的文件压缩包,要查看里面的每个文件的大小的话,解压出来可能需要很长时间,而且要占用大量磁盘空间和系统CPU资源,因此,不解压查看文件大小很有必要,所以本文给大家分享了Linux查看tar.gz中的文件明细的常用命令

核心命令

最常用、最核心的命令是:

tar -tzf archive.tar.gz

让我们分解一下这个命令:

  • -t:表示 list(列出),即列出归档内容。
  • -z:表示通过 gzip 过滤器进行操作。因为文件是 .gz 格式,所以需要这个选项来解压。
  • -f archive.tar.gz:指定要操作的文件名。
  • -v(可选):如果需要更详细的** verbose**(详细信息),可以加上此选项,它会显示文件权限、所有者、大小、修改时间等。

常用命令示例

这里是一些不同场景下的常用命令:

1. 基本列表(最常用)

简单地列出归档文件中的所有文件和目录。

tar -tzf archive.tar.gz

2. 详细列表

使用 -v 选项,显示类似 ls -l 的详细信息,包括权限、所有者、大小和修改时间。

tar -tzvf archive.tar.gz

输出示例:

drwxr-xr-x root/root         0 2023-10-05 14:30 myproject/
-rw-r--r-- root/root      1234 2023-10-05 14:30 myproject/file1.txt
-rw-r--r-- root/root      5678 2023-10-05 14:31 myproject/script.sh

3. 结合分页工具

如果归档文件非常大,列表很长,可以将其通过管道 (|) 传递给 lessmore 命令进行分页查看。

tar -tzvf large_archive.tar.gz | less

4. 结合 grep 过滤

如果你只想查找归档文件中是否包含某个特定文件或某一类文件,可以结合 grep 使用。

# 查找归档中所有的 .jpg 文件
tar -tzf archive.tar.gz | grep '.jpg$'

# 查找名为 "config" 的文件或目录
tar -tzf archive.tar.gz | grep '/config$'

5. 仅查看顶层目录结构

有时你只关心根目录下有什么,而不想看到所有深层的文件明细。

tar -tzf archive.tar.gz | grep -o '^[^/]*' | sort | uniq

或者一个更简单但可能不太精确的方法是:

tar -tzf archive.tar.gz | head -20

注意事项和技巧

顺序很重要:选项 -f 必须后面紧跟文件名。习惯上,我们通常把 -f 放在所有选项的最后。

  • 正确tar -tzvf myfiles.tar.gz
  • 也正确(传统风格)tar tvzf myfiles.tar.gz
  • 错误tar -f myfiles.tar.gz -tzv (这通常也能工作,但不符合规范)

处理 .tar.gz.tgz.tar.gz.tgz 是相同格式的两种不同扩展名。上述所有命令对两者都适用。

tar -tzvf archive.tgz

查看其他压缩格式的 tar 包

tar -tjvf archive.tar.bz2
tar -tJvf archive.tar.xz
tar -tvf archive.tar
  • .tar.bz2:使用 -j 选项代替 -z
  • .tar.xz:使用 -J 选项(大写 J)。
  • 未压缩的 .tar:省略 -z, -j, -J 等压缩选项。

只是查看,不会解压:请放心,tar -t 命令仅仅是读取和列出文件列表,不会将归档中的文件实际解压到你的磁盘上。

总结

需求命令
快速查看里面有什么文件tar -tzf file.tar.gz
查看详细信息(权限、大小等)tar -tzvf file.tar.gz
列表太长,想一页一页看tar -tzvf file.tar.gz | less
查找特定文件tar -tzf file.tar.gz | grep "filename"
查看 .tar.bz2 文件tar -tjvf file.tar.bz2

到此这篇关于Linux系统中查看tar.gz中的文件明细的常用命令的文章就介绍到这了,更多相关Linux查看tar.gz文件明细内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Shell脚本实现启动PHP内置FastCGI Server

    Shell脚本实现启动PHP内置FastCGI Server

    这篇文章主要介绍了Shell脚本实现启动PHP内置FastCGI Server,本文讲解了一些需求过程,并给出了实现需求的shell脚本,需要的朋友可以参考下
    2015-04-04
  • linux iptables防火墙中的工作常用命令

    linux iptables防火墙中的工作常用命令

    linux系统的防火墙,IP信息包过滤u系统,它实际上由两个组件netfilter和iptables组成,这篇文章主要介绍了linux iptables防火墙-工作常用命令,需要的朋友可以参考下
    2022-10-10
  • shell脚本打印日期时间的实现示例

    shell脚本打印日期时间的实现示例

    在shell 中,可以使用 `date` 命令打印系统时间,本文主要介绍了shell脚本打印日期时间的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • 分享awk变量$0的妙用

    分享awk变量$0的妙用

    对awk的非常入学,于是把exp.log的处理那段都用awk写出来。惊喜的发现awk有个内置参数NR,而且awk内部也可以进行运算
    2013-03-03
  • Shell脚本实现监控磁盘、CPU、内存占用情况

    Shell脚本实现监控磁盘、CPU、内存占用情况

    CPU、内存和磁盘是计算机中重要且相互依赖的组件,这篇文章主要为大家详细介绍了如何通过shell实现如何监控他们的使用情况,感兴趣的可以了解下
    2023-09-09
  • Shell定时删除指定时间之前的文件

    Shell定时删除指定时间之前的文件

    这篇文章主要介绍了Shell定时删除指定时间之前的文件,本文用来删除一个月之前的备份文件,并加入到crontag定时删除,需要的朋友可以参考下
    2014-12-12
  • Ubuntu、Linux Mint一键安装Chrome浏览器的Shell脚本分享

    Ubuntu、Linux Mint一键安装Chrome浏览器的Shell脚本分享

    这篇文章主要介绍了Ubuntu、Linux Mint一键安装Chrome浏览器的Shell脚本分享,本文直接给出实现代码,需要的朋友可以参考下
    2015-03-03
  • Linux Shell制作录制回放功能脚本

    Linux Shell制作录制回放功能脚本

    这篇文章主要为大家详细介绍了Linux Shell制作录制回放功能脚本,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • shell实现多级菜单脚本编写的示例代码

    shell实现多级菜单脚本编写的示例代码

    本文主要介绍了shell实现多级菜单脚本编写,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • Impala-shell命令参数的实现

    Impala-shell命令参数的实现

    这篇文章主要介绍了Impala-shell命令参数的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12

最新评论