Как вывести список папок / файлов файла file.tar.gz внутри файла file.tar

Мне нужно перечислить папку / файлы внутри certs.tar.gz который находится внутри file.tar без их извлечения.

[root@git test]# tar -tf file.tar
./
./product/
./product/.git/
./product/.git/refs/
./product/.git/refs/heads/
./Release/add_or_modify.sh
./certs.tar.gz
[root@git test]#

1 ответ

Решение

Вы можете использовать и условия:

tar -xf abc.tar "abc.tar.gz" && tar -ztvf abc.tar.gz

Объяснение:

Для распечатки файлов мы используем

Если файл имеет тип tar.gz:

tar -ztvf file.tar.gz

Если файл имеет тип tar:

tar -tvf file.tar

Если файл имеет тип tar.bz2:

tar -jtvf file.tar.bz2

Вы также можете искать файлы в любой из вышеперечисленных команд. например:

tar -tvf file.tar.bz2 '*.txt'

Для извлечения файлов мы используем

tar -xf file.tar

В этих командах

  • t: список содержимого архива.
  • v: обработан подробный список файлов (отображается подробная информация).
  • z: Отфильтруйте архив через gzip, чтобы мы могли открыть сжатый (распакованный) файл.gz tar.
  • j: Фильтровать архив через bzip2, использовать для распаковки.bz2 файлов.
  • f filename: использовать архивный файл с именем filename.
  • x: Извлечь все файлы из данного tar, но при передаче с именем файла будут извлечены только соответствующие файлы
Другие вопросы по тегам