Assorted tar related things, including a fast tar-based copy.
Project description
Assorted tar related things, including a fast tar-based copy.
Latest release 20240318: Initial PyPI release with nice traced_cpdir() function.
My most heavily used use for this is my cpdir
script which
does a high performance directory copy by piping 2 tar
s
together.
It runs this:
from cs.tarutils import traced_cpdir
sys.exit(traced_cpdir(*sys.argv[1:]))
Function tar(*srcpaths: List[str], chdirpath='.', output, tar_exe='tar', bcount=2048)
Tar up the contents of srcpaths
to output
.
Return the Popen
object for the tar
command.
Parameters:
srcpaths
: source filesystem pathschdirpath
: optional directory to which tochdir
before accessingsrcpaths
tar_exe
: optionaltar
executable, default fromTAR_EXE
:tar
bcount
: blocking factor in 512 byte unites, default fromDEFAULT_BCOUNT
:2048
Function traced_cpdir(srcdirpath, dstdirpath, *, label=None, tar_exe='tar', bcount=2048, upd)
Copy a directory to a new place using piped tars with progress reporting.
Return 0
if both tars succeed, nonzero otherwise.
Parameters:
srcdirpath
: the source directory filesystem pathdstdirpath
: the destination directory filesystem path, which must not already existlabel
: optional label for the progress bartar_exe
: optionaltar
executable, default fromTAR_EXE
:tar
bcount
: blocking factor in 512 byte unites, default fromDEFAULT_BCOUNT
:2048
Function traced_untar(tarfd, *, chdirpath='.', label=None, tar_exe='tar', bcount=2048, total=None, _stat_fd=False, upd)
Read tar data from tarfd
and extract.
Return the tar
exit code.
Parameters:
tarfd
: the source tar data, suitable forsubprocess.Popen
'sstdin
parameterchdirpath
: optional directory to which tochdir
before accessingsrcpaths
label
: optional label for the progress bartar_exe
: optionaltar
executable, default fromTAR_EXE
:tar
bcount
: blocking factor in 512 byte unites, default fromDEFAULT_BCOUNT
:2048
Release Log
Release 20240318: Initial PyPI release with nice traced_cpdir() function.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cs.tarutils-20240318-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6829df016051a16e4cefd9b39a4edff35b3e88585f70081b4995b75567b25180 |
|
MD5 | 91219db4a5d0a5a99c445952ea2774a1 |
|
BLAKE2b-256 | 4c17c20665757b8d3253b64bd55313ef638a51f5a2ec939a7cc06ff86855bef9 |