New commands
password
Set, change or remove password from single archive (NO multipart)
Please note the new -key2 switch; others are -space (do not check writeability), -force (overwrite output)
Change pass from X to Y: password z:\x.zpaq z:\y.zpaq -key X -key2 Y
Add password X to NON encrypted: password z:\nocrypt.zpaq z:\yescrypt.zpaq -key2 X
Remove password X from encrypted: password z:\crypt.zpaq z:\nocrypt.zpaq -key X
To remove a password (last example) you should enter, when asked, . (a single dot) as destination password
Please be aware: changing or removing password of an encrypted archive, inserting the WRONG password, will generate SILENTLY corrupted output
Why do not check before? To make it less immediate use brute force scripts
This type of encryption is designed to operate on all blocks (read everything from the file, encrypt, write out); the -repack function of the x command remains active if you want to operate on the referenced blocks
trim
Trim incomplete .zpaq file (NO multipart, only single), removing incomplete transaction
Thanks to JaitinPrakash #16
Dry run
zpaqfranz trim z:\1.zpaq
Suggested usage (safer: make a backup, trim the backup)
zpaqfranz trim z:\1.zpaq -to d:\tiny.zpaq
In place trim (risky!)
zpaqfranz trim z:\1.zpaq -kill
dirsize
show cumulative folder(s) size
Search (by default case insensitive) the rightmost portion of a path
H:\rambo\cloud>zpaqfranz dirsize rambo2.zpaq marcus vanessa
zpaqfranz v54.15-experimental (HW BLAKE3), SFX64 v52.15, compiled May 20 2022
Block 8 K 15.503 (block/s)
31038: case iNSeNsITIVE right search, because NO -force switch
7.895.331.940 [2022-05-05 19:47:56] <</tank/d/documenti/MARCUS/>>
851.602.330 [2019-04-03 17:19:40] <</tank/d/documenti/vanessa/>>
0.984 seconds (00:00:00) (all OK)
With -force do a case sensitive find
In this example vanessa do not match
H:\rambo\cloud>zpaqfranz dirsize rambo2.zpaq /tank/d/documenti/MARCUS vanessa -force
zpaqfranz v54.15-experimental (HW BLAKE3), SFX64 v52.15, compiled May 20 2022
Block 8 K 15.037 (block/s)
31019: case sensitive == search, because of -force switch
7.895.331.940 [2022-05-05 19:47:56] <</tank/d/documenti/MARCUS/>>
31094: folder searched 2 != founded 1
0.953 seconds (00:00:00) (with warnings)
dir mode
On *nix systems: if the executable name is dir... emulate Windows' dir
The dir command (shows cumulative size, free space) can be "compressed" by placing a copy of zpaqfranz, named dir, in the path
Usually changing the Makefile, adding the last line
install: zpaqfranz
install -m 0755 -d $(DESTDIR)$(BINDIR)
install -m 0755 zpaqfranz $(DESTDIR)$(BINDIR)
install -m 0755 zpaqfranz $(DESTDIR)$(BINDIR)/dir
I really, really do NOT like ls behavior
root@aserver:/tmp/zp # dir /root /os
==== Scanning dir <</root/>> /os
2022-05-20 10:30:06 <DIR> /root/
2017-08-11 18:04:33 <DIR> /root/.cache/
2018-10-17 15:05:45 <DIR> /root/.config/
(...)
2018-10-17 15:34:03 <DIR> /root/VirtualBox VMs/
2022-05-11 16:15:45 0 /root/expr
2022-05-18 17:13:04 <DIR> /root/script/
2021-02-17 08:25:41 28 /root/.lesshst
2020-09-09 17:24:57 96 /root/.detoxrc
(...)
2022-05-03 12:39:19 139.374 /root/mbox
14 File 202.081 byte
10 directory 141.117.390.848 bytes ( 131.43 GB) free
0.001 seconds (00:00:00) (all OK)
minor fixes
Hidden SFX module (for 32-bit Windows) is visible
Some refactoring in help