Напечатайте первую строку каждого файла внутри tar.gz без распаковки - PullRequest
0 голосов
/ 27 апреля 2020

Я ищу команду для печати первой строки каждого файла, содержащегося в архиве tar.gz, без его распаковки.

Пример:

tar -ztvf MyArchive.tar.gz
-rw-r--r-- root/root 3732541752 2020-04-04 03:24 FILE1.TXT
-rw-r--r-- root/root   90493394 2020-04-04 03:16 FILE2.TXT
-rw-r--r-- root/root  103294570 2020-04-03 21:06 FILE3.TXT
-rw-r--r-- root/root   16865694 2020-04-03 21:07 FILE4.TXT
-rw-r--r-- root/root 13176227988 2020-04-03 23:36 FILE5.TXT

I нужно напечатать первую строку каждого ФАЙЛА * .TXT внутри tar.gz

Как мне этого добиться?

Ответы [ 2 ]

0 голосов
/ 27 апреля 2020

Попробуйте это:

tar zxf MyArchive.tar.gz --to-command="head -n 1"

Эта команда берет файлы в tar отдельно и передает их в команду "head -n 1".

0 голосов
/ 27 апреля 2020

Вы можете использовать команды tar и для команд l oop.

для i в $ (tar -ztvf MyArchive.tar.gz | grep -i file | awk '{print $ NF}')

do

tar xfO MyArchive.tar.gz $ i | head -1

done

Использование "tar xfO MyArchive.tar.gz filename" читать содержимое файлов внутри tar.gz

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...