История изменений
Исправление legolegs, (текущая версия) :
Можно ещё так:
readarray HASLABEL < <(tar --test-label < t.tar)
awk -v skip=${#HASLABEL[@]} 'NR>skip && !/\/$/'
PS интересные факты:
- метка достается за О(1) даже из огромных сжатых архивов.
- tar не даёт поставить многострочную метку (экранирует сам).
PPS вариант с comm мне всё ещё нравится больше, он короче и «лишний» вызов тоже один. Подумать только, что задача «достать список файлов из архива» не такая тривиальная.
Исправление legolegs, :
Можно ещё так:
readarray HASLABEL < <(tar --test-label < t.tar)
awk -v skip=${#HASLABEL[@]} 'NR>skip && !/\/$/'
PS интересные факты:
- метка достается за О(1) даже из огромных сжатых архивов.
- tar не даёт поставить многострочную метку (экранирует сам). PPS вариант с comm мне всё ещё нравится больше, он короче и «лишний» вызов тоже один. Подумать только, что задача «достать список файлов из архива» не такая тривиальная.
Исходная версия legolegs, :
Можно ещё так:
readarray HASLABEL < <(tar --test-label < t.tar)
awk -v skip=${#HASLABEL[@]} 'NR>skip && !/\/$/'
PS интересные факты:
- метка достается за О(1) даже из огромных сжатых архивов.
- tar не даёт поставить многострочную метку (экранирует сам).