У кого-нибудь есть скрипт для использования на сервисе Automator для сжатия файла, файлов, папки или папок при нажатии правой кнопки мыши? Это была бы альтернативная опция для опции Compress, которая сжимала бы в zip.

1 ответ1

2

Выберите шаблон службы и используйте скрипт оболочки следующим образом:

n=$1
[[ -e $n.tgz ]] && { i=2; n="$1-$i"; }
while [[ -e $n.tgz ]]; do n="${n%-*}-$((i++))"; done
d=${1%/*}
cd -- "$d"
COPYFILE_DISABLE= tar -czf "$n.tgz" -- "${@#"$d/"}"

Измените -z на -j и tgz на tbz, чтобы использовать bzip2.

Служба обычно должна использоваться с одной папкой в качестве входных данных. Если ввод состоит из нескольких файлов, он не создает каталог для файлов.

Установка COPYFILE_DISABLE указывает tar удалить расширенные атрибуты и ACL вместо использования формата AppleDouble:

$ touch a;xattr -w key value a
$ tar -cf a.tar a;tar -tf a.tar
./._a
a
$ COPYFILE_DISABLE= tar -cf a2.tar a;tar -tf a2.tar
a
$

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .