Если вы не используете аргумент fixlastline
(по умолчанию отключен), то eol
не используется.
Вероятное предположение: у вас есть дополнительная строка в конце вашего сценария "распаковки" после строки __ARCHIVE_BELOW__
.Там не может быть лишних (даже пустых) строк, или вы отправите эти байты в tar.Это может быть вызвано, как сказал Деннис, проблемами eol, но вам, вероятно, понадобится awk
, который не является GNU, чтобы решить эту проблему.
Простой способ подтвердить это изменить tail
для перенаправления в файл вместо tar, а затем шестнадцатеричные первые несколько байтов исходного tar и выходного tar, чтобы увидеть, какие дополнительные (или отсутствующие) байты попадают туда.Вам нужно установить опцию binary
в вашем concat
.