Você deve alterar esta linha e adicionar o diretório que criou a seguir.
sshpass -p 'PASSWORD' scp /dbbackup/backupdb/ontape/fullsize/* "$server/$(date +%Y-%m-%d)"
Você também pode usar rsync
, pois ele criará o diretório de último nível no caminho de destino, se ele não existir, e não precisará de mkdir
lá como comando extra.
sshpass -p 'PASSWORD' rsync /dbbackup/backupdb/ontape/fullsize/* "$server/$(date +%Y-%m-%d)"
isso criará o diretório de "$(date +%Y-%m-%d)"
se ele não existir no caminho de destino.
Assim, no seu script, como você vai copiar para 2 destinos e você está criando diretórios primeiro, você pode fazê-lo apenas com o script abaixo.
for dest in dest1 dest2; do
sshpass -p 'PASSWORD' rsync -av /path/to/src/* "$dest/$(date +%Y-%m-%d)"
done
Por favor, note que usar esta forma de passar sua senha é uma má prática, já que ela fica visível para outros usuários que acessam seu sistema ou pode assistir via ps -aux
, em vez disso você pode set uma autenticação de publikKey .
ssh-keygen -t rsa
ssh-copy-id USER@HOST