Skip to content

dionys/path-tiny-archive-tar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

Path::Tiny::Archive::Tar - Tar/untar add-on for file path utility

VERSION

version 0.003

SYNOPSIS

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");

DESCRIPTION

This module provides two additional methods for Path::Tiny for working with tar archives.

METHODS

tar

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 using gzip.
    • 1 to 9: This is gzip 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 for gzip level 0. No compression.
    • COMPRESSION_GZIP_FASTEST: This is a synonym for gzip level 1.
    • COMPRESSION_GZIP_BEST: This is a synonym for gzip level 9.
    • COMPRESSION_GZIP_DEFAULT: This gives a good compromise between speed and compression for gzip, and is currently equivalent to 6 (this is in the zlib code). This is a synonym for COMPRESSION_GZIP.
  • COMPRESSION_BZIP2: Compress using bzip2.

tgz

path("/tmp/foo.txt")->tgz("/tmp/foo.tar.gz");

Method tgz is synonym for tar with COMPRESSION_GZIP type.

tbz2

path("/tmp/foo.txt")->tbz2("/tmp/foo.tar.bzip2");

Method tbz2 is synonym for tar with COMPRESSION_BZIP2 type.

untar

path("/tmp/foo.tar")->untar("/tmp/foo");

Extracts a tar archive to specified directory. Returns the path to the destination directory or undef.

AUTHOR

Denis Ibaev dionys@gmail.com

COPYRIGHT AND LICENSE

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.

About

Tar/untar add-on for file path utility

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages