Методы создания архива tar.gz с примерами кода

Чтобы создать архивный файл tar.gz, вы можете использовать различные методы в зависимости от вашей операционной системы и языка программирования. Вот несколько примеров:

  1. Командная строка Linux (Bash):

    tar -czvf archive.tar.gz file1 file2 directory/

    Эта команда создает архив tar.gz с именем «archive.tar.gz», содержащий «файл1», «файл2» и каталог «каталог».

  2. Python (с использованием модуля tarfile):

    import tarfile
    def create_tar_gz(output_file, *input_files):
       with tarfile.open(output_file, "w:gz") as tar:
           for file in input_files:
               tar.add(file)
    create_tar_gz("archive.tar.gz", "file1", "file2", "directory")

    Эта функция Python создает архив tar.gz с именем «archive.tar.gz», содержащий «file1», «file2» и содержимое каталога «directory».

  3. Java (с использованием библиотеки Apache Commons Compress):

    import org.apache.commons.compress.archivers.tar.*;
    import org.apache.commons.compress.compressors.gzip.GzipCompressorOutputStream;
    public class TarGzCreator {
       public static void createTarGz(String outputFileName, String... inputFiles) throws IOException {
           try (TarArchiveOutputStream tarOut = new TarArchiveOutputStream(new GzipCompressorOutputStream(new BufferedOutputStream(new FileOutputStream(outputFileName))))) {
               for (String inputFile : inputFiles) {
                   File file = new File(inputFile);
                   TarArchiveEntry tarEntry = new TarArchiveEntry(file, file.getName());
                   tarOut.putArchiveEntry(tarEntry);
                   try (BufferedInputStream fileIn = new BufferedInputStream(new FileInputStream(file))) {
                       byte[] buffer = new byte[1024];
                       int bytesRead;
                       while ((bytesRead = fileIn.read(buffer)) != -1) {
                           tarOut.write(buffer, 0, bytesRead);
                       }
                   }
                   tarOut.closeArchiveEntry();
               }
           }
       }
    }
    
    TarGzCreator.createTarGz("archive.tar.gz", "file1", "file2", "directory");

    В этом примере Java используется библиотека Apache Commons Compress для создания архива tar.gz с именем «archive.tar.gz», содержащего «file1», «file2» и содержимое каталога «directory».

Это всего лишь несколько примеров того, как создать архив tar.gz на разных языках. Не забудьте изменить имена файлов и каталогов в соответствии с вашими требованиями.