У меня есть архив gzip с последними данными. Если я распаковываю его, используя gzip -d
его, он говорит мне: « декомпрессия в порядке, конечный мусор игнорируется » (то же самое относится и к тому, gzip -t
что можно использовать в качестве метода обнаружения наличия таких данных).
Теперь я хотел бы узнать этот мусор, но, как ни странно, я не мог найти способ его извлечь. gzip -l --verbose
говорит мне, что «сжатый» размер архива - это размер файла (т.е. с последними данными), это неправильно и бесполезно. file
также не помогает, так что я могу сделать?
источник
less
илиhd
илиhd | less
или что-то еще.while (<>)
цикл inperl
будет читать stdin и любые файлы, перечисленные в @ARGV ...., что упрощает написание сценариев, которые одинаково хорошо работают как фильтр (то есть чтение stdin, запись в stdout) и с именованным файлом (ами). ). и stdout, конечно, всегда можно перенаправить в файл. большинство моих сценариев perl написаны как фильтры, чтобы воспользоваться этим.push @ARGV,'-' if (!@ARGV);
раньшеmy $input_file_name = shift;
все, что нужно здесь. то есть аргумент по умолчанию-
(справочное сообщение может быть напечатано, если $ ARGV [0] == '-h' или '--help'.). Дляwhile(<>)
цикла вам даже не нужно было бы делать это, но, вероятно, это больше проблем, чем стоит так писатьIO::Uncompress::Gunzip
.-o
опция или что-то в этом роде. наличие сценария, автоматически переключающегося с первого аргумента из двух входных в первый и только выходного аргумента, кажется мне рискованным и случайным (заманчивое убийство).