Dois comandos Rsync na mesma pasta

1. Dois comandos Rsync na mesma pasta

Rodrigo C
cunhaigo23

(usa Ubuntu)

Enviado em 09/04/2022 - 20:26h

Saudações, gostaria de disparar dois comandos Rsync na mesma pasta simultaneamente e cada processo rsync pegaria um arquivo cada um, um pegaria o primeiro arquivo outro o segundo arquivo, cada um teria a pasta de destino diferente, funcionando como um sorteio. Pensei em algo assim:

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste1/

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste2/

Gostaria que cada comando copie um arquivo diferente na pasta de origem de forma simultânea, até que a pasta não tenha mais arquivos, se tiver 4 arquivos dois arquivos ficam na pasta "teste1" e os outros dois na pasta "teste2"

Muito obrigado a todos




  


2. Re: Dois comandos Rsync na mesma pasta

Carlos APC
Carlos_Cunha

(usa Linux Mint)

Enviado em 09/04/2022 - 21:00h

cunhaigo23 escreveu:

Saudações, gostaria de disparar dois comandos Rsync na mesma pasta simultaneamente e cada processo rsync pegaria um arquivo cada um, um pegaria o primeiro arquivo outro o segundo arquivo, cada um teria a pasta de destino diferente, funcionando como um sorteio. Pensei em algo assim:

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste1/

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste2/

Gostaria que cada comando copie um arquivo diferente na pasta de origem de forma simultânea, até que a pasta não tenha mais arquivos, se tiver 4 arquivos dois arquivos ficam na pasta "teste1" e os outros dois na pasta "teste2"

Muito obrigado a todos



O que vc quer eé fazer um rsync com "múltiplas threads" , mas dessa forma ai não vai rola, sua origem são os mesmo arquivos, sem chances dessa forma funcionar.
Ou vc faz com a origem seja diferentes, baseado em nomes por exemplo, o rsync 1 pega os arquivos X,Y e Z e rsync 2 pega osA,B e C).

Mas caso queira tentar fazer com multiplas threads, a alguma" "contornos" que o pessoal faz...
De uma olhada..





#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#



3. Re: Dois comandos Rsync na mesma pasta

Rodrigo C
cunhaigo23

(usa Ubuntu)

Enviado em 09/04/2022 - 21:12h


Carlos_Cunha escreveu:

cunhaigo23 escreveu:

Saudações, gostaria de disparar dois comandos Rsync na mesma pasta simultaneamente e cada processo rsync pegaria um arquivo cada um, um pegaria o primeiro arquivo outro o segundo arquivo, cada um teria a pasta de destino diferente, funcionando como um sorteio. Pensei em algo assim:

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste1/

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste2/

Gostaria que cada comando copie um arquivo diferente na pasta de origem de forma simultânea, até que a pasta não tenha mais arquivos, se tiver 4 arquivos dois arquivos ficam na pasta "teste1" e os outros dois na pasta "teste2"

Muito obrigado a todos



O que vc quer eé fazer um rsync com "múltiplas threads" , mas dessa forma ai não vai rola, sua origem são os mesmo arquivos, sem chances dessa forma funcionar.
Ou vc faz com a origem seja diferentes, baseado em nomes por exemplo, o rsync 1 pega os arquivos X,Y e Z e rsync 2 pega osA,B e C).

Mas caso queira tentar fazer com multiplas threads, a alguma" "contornos" que o pessoal faz...
De uma olhada..





#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#


Estava pensando em algo assim:

sudo ls /home/rodrigo/scripts/ > /home/rodrigo/scripts/copia_aleatoria.txt

ARQ1=($( head -n 1 /home/rodrigo/scripts/copia_aleatoria.txt ))

sudo ls /home/rodrigo/scripts/ > /home/rodrigo/scripts/copia_aleatoria.txt

sudo rsync -av --remove-source-files /home/rodrigo/scripts/$ARQ1 /home/rodrigo/1/

ARQ2=($( head -n 1 /home/rodrigo/scripts/copia_aleatoria.txt ))

sudo ls /home/rodrigo/scripts/ > /home/rodrigo/scripts/copia_aleatoria.txt

sudo rsync -av --remove-source-files /home/rodrigo/scripts/$ARQ2 /home/rodrigo/2/




4. Re: Dois comandos Rsync na mesma pasta

Carlos APC
Carlos_Cunha

(usa Linux Mint)

Enviado em 09/04/2022 - 21:54h

cunhaigo23 escreveu:


Carlos_Cunha escreveu:

cunhaigo23 escreveu:

Saudações, gostaria de disparar dois comandos Rsync na mesma pasta simultaneamente e cada processo rsync pegaria um arquivo cada um, um pegaria o primeiro arquivo outro o segundo arquivo, cada um teria a pasta de destino diferente, funcionando como um sorteio. Pensei em algo assim:

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste1/

ARQ=($( ls -C /media/export/pasta ))
sudo rsync -av --remove-source-files /media/export/pasta/"$ARQ" /media/export/teste2/

Gostaria que cada comando copie um arquivo diferente na pasta de origem de forma simultânea, até que a pasta não tenha mais arquivos, se tiver 4 arquivos dois arquivos ficam na pasta "teste1" e os outros dois na pasta "teste2"

Muito obrigado a todos



O que vc quer eé fazer um rsync com "múltiplas threads" , mas dessa forma ai não vai rola, sua origem são os mesmo arquivos, sem chances dessa forma funcionar.
Ou vc faz com a origem seja diferentes, baseado em nomes por exemplo, o rsync 1 pega os arquivos X,Y e Z e rsync 2 pega osA,B e C).

Mas caso queira tentar fazer com multiplas threads, a alguma" "contornos" que o pessoal faz...
De uma olhada..





#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#


Estava pensando em algo assim:

sudo ls /home/rodrigo/scripts/ > /home/rodrigo/scripts/copia_aleatoria.txt

ARQ1=($( head -n 1 /home/rodrigo/scripts/copia_aleatoria.txt ))

sudo ls /home/rodrigo/scripts/ > /home/rodrigo/scripts/copia_aleatoria.txt

sudo rsync -av --remove-source-files /home/rodrigo/scripts/$ARQ1 /home/rodrigo/1/

ARQ2=($( head -n 1 /home/rodrigo/scripts/copia_aleatoria.txt ))

sudo ls /home/rodrigo/scripts/ > /home/rodrigo/scripts/copia_aleatoria.txt

sudo rsync -av --remove-source-files /home/rodrigo/scripts/$ARQ2 /home/rodrigo/2/



Resposta continua sendo a mesma, vc leu e entendeu o que eu disse ?Pq repetiu a mesma pergunta inicial....
Olhou os links ?

#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts