Você pode simplesmente fazer assim:
for file in $(ls dir/); do zcat ${file} | ssh user@remote "cat > /path/${file}"; done
Cenário: estou tendo cerca de cem arquivos de texto ímpares que são compactados como .gz. Eles precisam ser transferidos para um servidor remoto. Eu não quero usar o scp. Ambos, servidores linux.
meu requisito / minha ideia: Eu quero escrever e executar um script bash no servidor de origem para isso. O que eu quero é como zcat cada um dos arquivos, canalizar essa saída sobre o usuário ssh @ remoto (seu já configurado sem senha), então ter essas saídas redirecionadas para um arquivo de texto no servidor remoto. É assim correto? Se sim, como implementar isso?
Obrigado,
Tags ssh scp pipe file-transfer