Escribí un servicio de automator para crear archivos tar usando el comando tar
ya que este formato es más eficaz que el comando .zip
que me da la opción "Comprimir" del menú del finder. Sin embargo al ejecutar el servicio solo me da este error, independientemente del tipo de archivo utilizado: Esta es la fuente del servicio: (Utilizando una versión ligeramente modificada de https://stackoverflow.com/questions/35138806/automator-action-shell-script-to-tar-multiple-files-folders-containing-spaces )
Respuesta
¿Demasiados anuncios?
bogdanw
Puntos
21
Versión adaptada de tu script que funciona en Monterey (bash), pero sólo para archivos, no carpetas.
files=()
path=''
file=''
for f in "$@"
do
path=$(dirname "$f")
file=$(basename "$f")
files+=(-C "$path" "$file")
done
cd $path
archivename=$(basename ${file[l]})
tar -cf $archivename.tar "${files[@]}"
Versión adaptada de este script https://superuser.com/a/680400 que funciona en Monterey (zsh) para archivos y carpetas
n=$1
[[ -e $n.tgz ]] && { i=2; n="$1-$i"; }
while [[ -e $n.tgz ]]; do n="${n%-*}-$((i++))"; done
d=${1%/*}
cd -- "$d"
file_name=$(basename $n)
COPYFILE_DISABLE= tar -czf $file_name.tgz -- "${@#"$d/"}"