tem como enviar arquivos do menor ao maior e mais de um por vez?

1. tem como enviar arquivos do menor ao maior e mais de um por vez?

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 11/12/2016 - 11:27h

Olá, eu utilizo um script para enviar meus backups para outro servidor a anos, mas faz tempo que estou estudando um meio de fazer como o file zilla poder enviar mais de um arquivo por vez sendo que os envios seria do menor e por ultimo os arquivos maiores.
mas estou achando que isso é impossivel não encontrei em lugar algum.
se isso fosse possivel os envios seria muito mais rápido.

segue o script que utilizo

#!/bin/bash
SHELL=/bin/sh
PATH=/sbin:/usr/sbin:/usr/bin:/bin


USERNAME="usuario"
PASSWORD="senha"
SERVER="ip do servidor"

cd /mnt/backups
chmod 644 *.gz
ftp -ivn $SERVER <<EOF
user $USERNAME $PASSWORD
bin
cd /backups
mput *.tar.gz
buy
EOF


att
Márcio M Mendes


  


2. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

Arthur J. Hoch
Arthur_Hoch

(usa FreeBSD)

Enviado em 11/12/2016 - 14:52h

Você pode fazer um for...
Substituindo o "echo $i", por uma função que faz a transferencia do arquivo.


for i in `ls -S -r`
do
echo $i
done


Explicação:
$ ls -al -S -r


3. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 11/12/2016 - 15:04h

Arthur_Hoch escreveu:

Você pode fazer um for...
Substituindo o "echo $i", por uma função que faz a transferencia do arquivo.


for i in `ls -S -r`
do
echo $i
done


Explicação:
$ ls -al -S -r




Olá,
obrigado pela dica
o comando ls resolveu o problema do tamanho dos arquivos
agora consigo enviar os backups do menor ao maior
só faltou descobrir se há como enviar mais de um arquivo por vez
pois tanto no for como while ele envia só um por vez

só faltou isso pra ficar perfeito
mas já é um bom começo



#!/bin/bash
SHELL=/bin/sh
PATH=/sbin:/usr/sbin:/usr/bin:/bin

cd /mnt/backups

ls -lSrh *.gz | awk -F " " '{print "AR " $9 }' >/mnt/backups/lista-backups.txt

cat /mnt/backups/lista-backups.txt | sed -r 's/(AR)//g'|
while read AR
do

USERNAME="usuario"
PASSWORD="senha"
SERVER="ip do servidor"
VERIFICA=`cat /mnt/backups/lista-backups.txt | wc -l `


if [ "$VERIFICA" -gt "0" ];
then
echo -e " enviando backups "
cd /mnt/backups
chmod 644 *.gz
ftp -ivn $SERVER <<EOF
user $USERNAME $PASSWORD
bin
cd /backups
mput /mnt/backups/$AR
buy
EOF
else
echo -e " não há backups para enviar "
fi
done


---> Márcio M M <---


4. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

Arthur J. Hoch
Arthur_Hoch

(usa FreeBSD)

Enviado em 11/12/2016 - 17:11h

Quantas conexões paralelas você quer?
Pode ser todas?


5. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 11/12/2016 - 17:13h

Arthur_Hoch escreveu:

Quantas conexões paralelas você quer?
Pode ser todas?



Olá,

Duas conexões ao mesmo tempo seria muito bom.

---> Márcio M M <---


6. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

Arthur J. Hoch
Arthur_Hoch

(usa FreeBSD)

Enviado em 13/12/2016 - 14:31h

conectadohost escreveu:

Arthur_Hoch escreveu:

Quantas conexões paralelas você quer?
Pode ser todas?



Olá,

Duas conexões ao mesmo tempo seria muito bom.

---> Márcio M M <---


Você pode dividir a lista de arquivos em duas (acredito que seja possível) e, abrir uma conexões para cada parte da lista. Isso colocando um "&" na primeira chamada para que a segunda seja executada.






7. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 13/12/2016 - 14:39h


Olá,
acredito que não funcionaria, caso não encontre um meio acho que vou dividir o script em 2 e executar ao mesmo tempo.

---> Márcio M M <---


8. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

Arthur J. Hoch
Arthur_Hoch

(usa FreeBSD)

Enviado em 13/12/2016 - 15:29h

conectadohost escreveu:


Olá,
acredito que não funcionaria, caso não encontre um meio acho que vou dividir o script em 2 e executar ao mesmo tempo.

---> Márcio M M <---


Só não entendo como a quantidade de conexões tornará a execução mais rápida.


9. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 22/12/2016 - 11:09h

Arthur_Hoch escreveu:

conectadohost escreveu:


Olá,
acredito que não funcionaria, caso não encontre um meio acho que vou dividir o script em 2 e executar ao mesmo tempo.

---> Márcio M M <---


Só não entendo como a quantidade de conexões tornará a execução mais rápida.



Olá,
enviando por exemplo de 10 em 10 é muito rápido
meus backups de 400 gigas demorou 4 horas, sendo que enviando um por vez demora 12 horas.
mas enfim como não encontrei um modo de enviar mais de um por vez por script
vou enviar um por um só que do menor ai maior como fiz no script.
vou deixar o tópico aberto caso apareça alguém que descubra uma solução.


---> Márcio M M <---


10. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

Sergei Martao
sergeimartao

(usa Linux Mint)

Enviado em 11/01/2017 - 09:14h

conectadohost escreveu:


Olá,
acredito que não funcionaria, caso não encontre um meio acho que vou dividir o script em 2 e executar ao mesmo tempo.

---> Márcio M M <---


Marcio, bom dia

Acredito que o Arthur_Hoch disse pode funcionar

Arthur_Hoch
Você pode dividir a lista de arquivos em duas (acredito que seja possível) e, abrir uma conexões para cada parte da lista. Isso colocando um "&" na primeira chamada para que a segunda seja executada.


Onde trabalho utilizamos script de migração de vários email em lote usando o parametro & no final do comando
Ao inves de ficar preso migrando todos os email de uma vez, dividimos a caixa de entrada e depois rodamos um script com várias linhas pegando cada parte dos email e cada linha do script possui & no final, funcionar sem problemas.



11. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 12/01/2017 - 09:40h


Olá,
Parece que não tem jeito mesmo estudei o manual do FTP e não encontrei comandos no qual eu possa fazer conexões simultâneas.
a ideia de criar 2 listas nesse caso não tem como e ficaria muito inviável pois se eu quiser 10 conexões teria que criar 10 listas.
por enquanto estou enviando um por vez do menor ao maior.
vou ver se encontro outros meios de fazer transferência com conexões simultâneas.

---> Márcio M M <---


12. Re: tem como enviar arquivos do menor ao maior e mais de um por vez?

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 12/01/2017 - 12:23h

Python te surpreenderia nisso. Eu garanto.





______________________________________________________________________
OS: Biebian
Kernel: x86_64 3.5.2-amd64
Resolution: 1320x768
CPU: Intel Core i3-4005U CPU @ 1.7GHz
RAM: 3852MiB
Distro: http://biebian.sourceforge.net/



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts