フォルダ内の数百個の画像を10メガ毎に分割圧縮したいのですが簡単にする方法はありますか?01zip 02zip・・・の様な保存方法です。結合不要な圧縮方法です。

1件の回答

回答を書く

1041562

2026-02-23 20:20

+ フォロー

はい、フォルダ内の画像を10MBごとに分割して圧縮する方法はいくつかあります。以下の方法は、LinuxやmacOS環境でコマンドラインを使用する例です。Windowsユーザーの方は、代替ソフトウェアを使用する方法を紹介します。

Linux/macOSの場合

1. コマンドラインツールを使用する方法:

- zip コマンドと split コマンドの組み合わせで行います。

- まず、全ての画像を一つのZIPファイルに圧縮します:

zip images.zip /path/to/images/*

- 次に、split コマンドを使用して10MBごとに分割します:

split -b 10m images.zip images_part_

- 分割されたファイルは images_part_aa, images_part_ab などのように保存されます。

2. 直接ファイルごとに分割圧縮する方法:

- 各ファイルを個別に圧縮し、既に作成されたZIPファイルのサイズが10MBを超えないようにします。

- 以下はPythonスクリプトを使用した例です:

python

import os

import zipfile

def add_to_zip(zip_path, file_path, max_size_mb):

# 現在のZIPファイルのサイズをチェック

zip_size = os.path.getsize(zip_path) if os.path.exists(zip_path) else 0

if zip_size + os.path.getsize(file_path) > max_size_mb * 1024 * 1024:

return False

return True

def zip_images(image_folder, output_folder, max_size_mb=10):

part_number = 1

zip_name = os.path.join(output_folder, f'images_part_part_number:02d}.zip')

zip_file = zipfile.ZipFile(zip_name, 'w')

for root, _, files in os.walk(image_folder):

for file in files:

file_path = os.path.join(root, file)

if not add_to_zip(zip_name, file_path, max_size_mb):

part_number += 1

zip_name = os.path.join(output_folder, f'images_part_part_number:02d}.zip')

zip_file = zipfile.ZipFile(zip_name, 'w')

zip_file.write(file_path, os.path.relpath(file_path, image_folder))

zip_file.close()

image_folder = '/path/to/images'

output_folder = '/path/to/output'

zip_images(image_folder, output_folder)

- このスクリプトは、指定されたフォルダ内のすべての画像ファイルを圧縮し、各ZIPファイルのサイズが10MB以下になるように分割します。

Windowsの場合

- WinRARを使用する方法:

1. WinRARをダウンロードしてインストールします。

2. WinRARを右クリックメニューに追加します。

3. 対象フォルダを右クリックし、「WinRARで圧縮」を選択します。

4. 「設定」タブから「名前の形式」に images_part_#.zip を入力します。

5. 「分割」セクションで「分割サイズ」に10MBを設定します。

6. 「OK」をクリックして圧縮を開始します。

これらの方法は、フォルダ内の画像を10MBごとに分割して圧縮するのに役立ちます。どの方法でも、ファイルの結合は必要ありません。

うったえる有益だ(0シェアするブックマークする

関連質問

Copyright © 2026 AQ188.com All Rights Reserved.

博識 著作権所有