Tengo un script con el que trato de comprimir un gran número de carpetas en
una máquina-origen (desde donde lo lanzo), mover estos tar.gz por scp a otra
máquina-destino y descomprimirlos en esta máquina-destino. El problema es
que cuando lo ejecuto me lo hace bien sólo para la última carpeta del pipe,
para las otras me crea archivos tar.gz vacíos en el origen que no llega a
mover. ¿Alguien sabe por qué?

Este es el script.sh:

#!/bin/bash
echo COMPRIMIENDO ...
tar -cvzf $1.tar.gz $1
echo ENVIANDO TAR.GZ ...
scp ./$1.tar.gz [email protected]:/destino
echo ELIMINANDO TAR.GZ ORIGEN ...
rm -rf ./$1.tar.gz
echo DESCOMPRIMIENDO TAR.GZ DESTINO ...
ssh [email protected] tar xvzf /destino/$1.tar.gz -C /destino/
echo ELIMINANDO TAR.GZ DESTINO ...
ssh [email protected] rm -rf /destino/$1.tar.gz

Y este es el comando que ejecuto como ‘usuario’ (funciono con clave
pública/privada entre ambas máquinas) desde maquina-origen:

$script.sh carpeta1 |script.sh carpeta2 | script.sh carpeta3

Como digo, sólo me lo hace bien para ‘carpeta3’, el resto no aparecen en
máquina-destino, aunque en maquina-origen aparecen carpeta1.tar.gz y
carpeta2.tar.gz con un par de Kbs, cuando cada carpeta ocupa cientos de Gbs.



--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Responder a