如何在不递归的情况下列出 tar 文件中的内容?

如何在不递归的情况下列出 tar 文件中的内容?

我有一个 tar(gz、bzip)文件并想查看其内容,但不是递归查看。

这是:文件中的“第一级”。

我已经知道如何查看内容:

tar -ztf 文件.tar.gz

但它是递归的!!

谢谢!

答案1

那么类似这样的情况怎么样:

tar -ztf 文件.tar.gz | egrep '^[^/]+/?$'

答案2

tar --exclude='*/*' -tf yourarchive.tar应该这么做。

这几乎肯定是 GNU tar 主义。但谁不使用 GNU tar 呢?(另一个有趣的事实:在 GNU tar 的最新版本中,您不需要“z”或“j”来列出或解压缩 .gz 或 .bz 文件 - 它会自动检测这些文件,并且它就可以正常工作。)

答案3

这应该显示顶级目录以及包含点字符的文件:

$ tar -tf app.tar.gz | grep -E '^\w+(\.\w+)*/*\w+(\.\w+)*/?$'

django/
django/django.wsgi
django/search_indexes/
django/templates/
django/app/
django/other-app/

相关内容