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


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
  • 3
    You can use --each/-e to let arepack do the iteration for you: arepack --each --format=7z *.zip – Joel Purra Jan 25 '17 at 16:51
  • 1
    @JoelPurra the arepack-only solution is best! Thanks – Matt Sephton Jun 21 '18 at 11:20

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

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

  • 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 '13 at 10:09

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)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.