2

I'd like to convert a couple thousand zip files to 7z, with maximum compression and multithreading enabled.

Also in another place. Like c:\temp\file.zip to f:\converted\file.7z

3 Answers 3

3

You can use arepack (included in atool command suite) to convert between archive formats. Combined with a little bash, it makes easy to convert a bunch of ZIP files to 7z:

for f in *.zip; do arepack $f $f.7z; done
rm *.zip
2
  • 3
    You can use --each/-e to let arepack do the iteration for you: arepack --each --format=7z *.zip
    – Joel Purra
    Jan 25, 2017 at 16:51
  • 1
    @JoelPurra the arepack-only solution is best! Thanks Jun 21, 2018 at 11:20
1

Nevermind, http://www.peazip.org/ does the job just fine!

Edit: But hell, it takes way too long....

1
  • And it also can't handle some zips that contain filenames in "bad" encodings like cp1251 or koi8r or something like that.
    – Sergey
    Jul 15, 2013 at 10:09
1

I wrote a script in Python - https://raw.github.com/pashinin/scripts/master/zip27z.py You can run it with:

./zip27z.py your_archive.zip

and it will create your_archive.7z near it.

Or you can install it on your system with make install (if you see the repo)

And just call:

zip27z your_archive.zip

It needs unzip and 7za programs.

You can modify it as you wish for your needs (and send me a pull request)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .