Как выполнять пакетное сжатие файлов на Mac (автоматизация процесса с помощью сценария Bash)

Если вам часто нужно заархивировать большое количество файлов на вашем Mac, вы, возможно, обнаружили, что этот процесс занимает много времени и повторяется. Хотя утилиту архивирования, встроенную в Mac OS, можно использовать для пакетного архивирования файлов, это все же может быть ручным процессом. Однако, обладая небольшими знаниями в области написания сценариев, вы можете автоматизировать процесс пакетного архивирования файлов с помощью сценария Bash.

В этой статье мы проведем вас через процесс создания сценария Bash, который позволит вам сжимать файлы в пакетах с любым выбранным вами числом на вашем Mac. Независимо от того, работаете ли вы с сотнями или тысячами файлов, этот скрипт поможет вам сэкономить время и избежать монотонности архивирования файлов вручную. К концу этого руководства у вас будет полнофункциональный сценарий Bash, который вы сможете использовать для пакетного zip-файлов в любом необходимом вам количестве с помощью всего нескольких простых команд.

пакетные zip-файлы в Mac

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Например, допустим, у вас есть 100 файлов в определенной папке. Вы можете использовать этот скрипт, чтобы сжать файлы в группы по 10, в результате чего получится 10 сжатых файлов. Кроме того, вы можете сжать файлы в группы по 5, в результате чего получится 20 сжатых файлов и так далее.

#!/bin/bash # Установить путь к папке, содержащей файлы для сжатия DIR_PATH=”/path/to/folder” # Установить префикс имени выходных архивных файлов ARCHIVE_PREFIX=”archive” # Установить максимальное количество файлов в пакете MAX_FILES=20 # Сменить каталог на указанный путь cd “$DIR_PATH” # Получить список всех файлов в каталоге files=( * ) # Подсчитать количество пакетов файлов num_batches=$(( (${ #файлы[@]} + $MAX_FILES – 1) / $MAX_FILES )) # Перебираем все пакеты файлов for (( i=0; i<$num_batches; i++ )); do # Установить начальный и конечный индексы пакета start=$(( $i * $MAX_FILES )) end=$(( ($i + 1) * $MAX_FILES - 1 )) # Проверить, превышает ли конечный индекс число файлов, если (( $end >= ${#files[@]} )); затем конец=$(( ${#файлы[@]} – 1 )) fi # Создать сжатый файл архива для пакета файлов archive_name=”${ARCHIVE_PREFIX}_${i}.tar.gz” tar -cvzf “$archive_name” “${files[@]:$start:$MAX_FILES}” готово

Загрузите этот файл сценария bash.

Что делает этот скрипт

Приведенный выше сценарий представляет собой сценарий bash, который сжимает несколько файлов в пакетные архивы.

Сначала он устанавливает путь к папке (DIR_PATH=”/path/to/folder”), содержащей файлы для сжатия, префикс имени файлов выходного архива (ARCHIVE_PREFIX=”archive”) и максимальное количество файлов в одном файле. пакет (MAX_FILES=20).

Затем он изменяет текущий каталог на указанный путь и получает список всех файлов в этом каталоге. Затем сценарий подсчитывает количество пакетов файлов и перебирает каждый пакет.

Для каждого пакета он устанавливает начальный и конечный индексы пакета, проверяет, превышает ли конечный индекс количество файлов, а затем создает сжатый архивный файл для пакета файлов с помощью команды «tar».

Полученные сжатые архивы именуются с использованием указанного префикса и последовательно нумеруются.

Как использовать скрипт Шаг 1.

Чтобы заархивировать zip-файлы на вашем Mac, сначала создайте новую папку и поместите в нее все файлы, которые вы хотите сжать.

Например, вы можете создать папку с именем «zipme» на рабочем столе и поместить все необходимые файлы в эту папку. Сделав это, вы можете найти путь к папке, перейдя к ней в Finder, а затем щелкнув правой кнопкой мыши и выбрав «Получить информацию».

Кроме того, вы можете использовать команду pwd в терминале, чтобы отобразить текущий каталог, а затем добавить имя папки в конец пути. А в нашем случае путь к zipme/ такой: /Users/hongkiat/Desktop/zipme, поэтому сделаем следующее:

редактировать:

DIR_PATH=”/путь/к/папке”

стать:

DIR_PATH=”/Users/hongkiat/Desktop/zipme”

Шаг 2.

Скопируйте и вставьте приведенный выше код в новый файл на вашем Mac с помощью текстового редактора, такого как TextEdit или Atom. Сохраните файл с расширение (например, batch_zip.sh) и сделайте его исполняемым, выполнив следующую команду в Терминале:

chmod +x /path/to/batch_zip.sh Шаг 3.

Затем, чтобы запустить скрипт, откройте Терминал и перейдите в каталог, в котором сохранен скрипт. Введите следующую команду и нажмите Enter:

./batch_zip.sh

Примечание. Если запуск ./batch_zip.sh не работает, попробуйте вместо этого использовать sudo ./batch_zip.sh. Имейте в виду, что «sudo» требует авторизации путем ввода пароля для текущего имени пользователя Mac.

После выполнения все файлы в указанной папке будут сжаты в пакеты до 20 файлов в каждом, и для каждого пакета будет создан файл архива с указанным префиксом и порядковым номером.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *