Puedes usar una acción de Crear Archivo y renombrar el archivo resultante:
d=${1%/*}
start="$d/${d##*/}"
name="$start.zip"
i=2
while [[ -e $name ]]; do
name="$start $i.zip"
let i++
done
mv "$1" "$name"
open -R "$name"
O utilice una acción de ejecución de shell script como ésta:
for n in $(seq $(printf %s "$@" | tr -dc / | wc -c)); do
uniq=$(printf %s\\n "$@" | cut -d / -f1-$n | uniq)
[[ $uniq != *$'\n'* ]] && dir=$uniq || break
done
cd "${dir:-/}"
[[ $dir ]] && start=${dir##*/} || start=archive
name="$start.zip"
i=2
while [[ -e $name ]]; do
name="$start $i.zip"
let i++
done
zip -r "$name" -- "${@#$dir/}"
open -R "$name"
Si algunos archivos tienen atributos extendidos o ACLs, zip los elimina. La Utilidad de Archivo y la acción Crear Archivo los almacenan en el formato AppleDouble.