Eu acho que o ~
e *
são expandidos pelo shell, mas eu aposto esperar invocar scp
diretamente, ignorando o shell para que eles não sejam expandidos. Você poderia tentar gerar o comando sh -c
the scp
.
Se for uma opção, também pode ser mais fácil compartilhar sua chave com o servidor, para que você não precise esperar por isso.
Usando a técnica sh
, o comando ficará parecido com:
expect -c 'spawn sh -c "scp -C -o CompressionLevel=9 ~/partFiles/* [email protected]:/export/home/abc/"; sleep 10; expect password; send "secretPassword\n";interact'