[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Lanzar comandos secuencialmente



On Fri, 16 Jan 2009, Gorka wrote:

> 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 usuario@10.0.0.100:/destino
> echo ELIMINANDO TAR.GZ ORIGEN ...
> rm -rf ./$1.tar.gz
> echo DESCOMPRIMIENDO TAR.GZ DESTINO ...
> ssh usuario@10.0.0.100 tar xvzf /destino/$1.tar.gz -C /destino/
> echo ELIMINANDO TAR.GZ DESTINO ...
> ssh usuario@10.0.0.100 rm -rf /destino/$1.tar.gz
> 
> 
> $script.sh carpeta1 |script.sh carpeta2 | script.sh carpeta3

Probaste ejecutandolos separados por ; ?
Es decir:
$ script.sh carpeta1; script.sh carpeta2; script.sh carpeta3

Por cierto, tambien podrias hacer que se ejecute el rm en el mismo paso
que lo descomprimis 
Ademas, podrias hacer el tar y descomprimirlo en el mismo paso,
haciendo algo asi (si no me falla la memoria):
$ tar czf - directorio | ssh usuario@10.0.0.100 tar xzf - -C /destino

Saludos,
Mauro

-- 
JID: lavaramano@jabber.org | http://lusers.com.ar/
work: mauro@gcoop.com.ar   | http://gcoop.com.ar/
2B82 A38D 1BA5 847A A74D 6C34 6AB7 9ED6 C8FD F9C1


Reply to: