Пожалуйста, обратитесь к repack-7z-files-to-zip-files-in- linux:
#!/bin/bash
TMPDIR=tempdir_$$
for x in `ls *.7z`; do
mkdir $TMPDIR
cd $TMPDIR
cp ../$x .
p7zip -d $x
zip -r ../${x%.7z}.zip *
cd ..
rm -rf $TMPDIR
done
Лично я использую команду 7z
в Ubuntu ( * Пакет 1007 *), который поддерживает оба формата сжатия.
Сложность вашего решения также может зависеть от того, содержит ли файл 7z несколько файлов или только один файл / tar-ball.