Path::Tiny::Archive::Tar - Tar/untar add-on for file path utility
version 0.003
use Path::Tiny
use Path::Tiny::Archive::Tar qw( :const );
path("foo/bar.txt")->tar("foo/bar.tgz", COMPRESSION_GZIP);
path("foo/bar.zip")->untar("baz");
This module provides two additional methods for Path::Tiny for working with tar archives.
path("/tmp/foo.txt")->tar("/tmp/foo.tar");
path("/tmp/foo")->tar("/tmp/foo.tar.gz", COMPRESSION_GZIP);
Creates a tar archive and appends a file or directory tree to it. Returns the path to the archive or undef.
You can choose different compression types and levels.
path("/tmp/foo")->zip("/tmp/foo.tgz", COMPRESSION_GZIP);
The types and levels given can be:
COMPRESSION_NONE
: No compression. This is the type that will be used if not specified.COMPRESSION_GZIP
: Compress usinggzip
.1
to9
: This isgzip
compression levels. 1 gives the best speed and worst compression, and 9 gives the best compression and worst speed.COMPRESSION_GZIP_NONE
: This is a synonym forgzip
level 0. No compression.COMPRESSION_GZIP_FASTEST
: This is a synonym forgzip
level 1.COMPRESSION_GZIP_BEST
: This is a synonym forgzip
level 9.COMPRESSION_GZIP_DEFAULT
: This gives a good compromise between speed and compression forgzip
, and is currently equivalent to 6 (this is in the zlib code). This is a synonym forCOMPRESSION_GZIP
.
COMPRESSION_BZIP2
: Compress usingbzip2
.
path("/tmp/foo.txt")->tgz("/tmp/foo.tar.gz");
Method tgz
is synonym for tar
with COMPRESSION_GZIP
type.
path("/tmp/foo.txt")->tbz2("/tmp/foo.tar.bzip2");
Method tbz2
is synonym for tar
with COMPRESSION_BZIP2
type.
path("/tmp/foo.tar")->untar("/tmp/foo");
Extracts a tar archive to specified directory. Returns the path to the destination directory or undef.
Denis Ibaev dionys@gmail.com
This software is copyright (c) 2021 by Denis Ibaev.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.