shell script [RESOLVIDO]

13. Re: shell script [RESOLVIDO]

matheus novaes marinho
Novaesma

(usa Outra)

Enviado em 19/10/2020 - 16:04h

msoliver escreveu:

Novaesma escreveu:

msoliver escreveu:

Novaesma escreveu:
quando rodo ele na manualmente da isso

Teste@(ip)'s password:
/home/saai/Catalogo/CHPE/2020/Wed: No such file or directory
Oct: No such file or directory
14: No such file or directory
ssh: connect to host 12 port 22: Invalid argument
UTC: No such file or directory
2020/*: No such file or directory

Boa tarde NovaEsma,
Como já foi 'dito', o erro é causado por espaços no nome dos arquivos.....
Aconselho, tirar esses espaços....
Se na sua distribuição tem o comando "rename", é bastante fácil .....
Ex: rename 's/ /_/g' *.txt
Pega todos *.txt do dir corrente, e troca espaço po "_"

Segue sugestão para o script:
#!/bin/bash
linha="|--------------------------------------------|";
LOG="./reg-log.txt";

printf "${linha}\n Sincronização iniciada: %(%x-%X)T\n${linha}\n" >> $LOG

# -r => Recursively copy entire directories.
for Dirs in CHP{E,I,G};do
scp -r "/home/saai/Catalogo/${Dirs}/2020/" Teste@ip:/home/Teste/Config/TEMP/
done
printf "${linha}\n Sincronização finalizada: %(%x-%X)T\n${linha}\n" >> $LOG



______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________

deixa eu so tirar uma duvida....
se eu for fazer um scrip pra cada dir eu teria que coloca o dir ao invés disso
for Dirs in CHP{E,I,G};do 

Justamente....
"Isso" => CHP{E,I,G},
É uma Expansão de Chaves, e retorna
CHPE CHPI CHPG
Se você tem de CHPA até CHPZ, é só fazer:
CHP{A..Z}
----------------------------------------------------------------------
Se tem somente um diretório elimine o laço.
#!/bin/bash
linha="|--------------------------------------------|";
LOG="./reg-log.txt";
printf "${linha}\n Sincronização iniciada: %(%x-%X)T\n${linha}\n" >> $LOG
scp -r "/home/saai/Catalogo/Diretório/2020/" Teste@ip:/home/Teste/Config/TEMP/
printf "${linha}\n Sincronização finalizada: %(%x-%X)T\n${linha}\n" >> $LOG



______________________________________________________________________
Devido a muitas perguntas, segue esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:
Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.

______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________


Tendi, muito o brigado!!


  



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts