Eu proponho duas soluções nem todas usando scp:
1. Use .ssh / config para ajudar
Ie: coloque algo assim em seu .ssh / config
Host p
HostName production.domain.com
Host d
HostName development.domain.com
Então você pode encurtar seu comando scp:
scp user@d:/path user@p:/path
2. Use software de controle de código-fonte como git. Então, quando você acabar de depurar e codificar e fazer outras coisas, você faz isso (simplificado):
git add /path/to/my_file
git commit -m "new version and features done"
git push production master
(Apenas configure seu git para usar o ssh)
3. Use qscp, ou quick-scp - um script bash projetado especialmente para sua conveniência:) link Basicamente, obtenha o arquivo qscp e torne-o executável. (e mude os padrões para o seu ambiente).
Será necessário um parâmetro obrigatório e dois parâmetros opcionais. Exemplo:
./qscp file # it will use defaults
./qscp path/to/dir dest.server.com # uses default source, but to other dest
./qscp /abs/path/to/file dest.srv.com src.srv.com # takes both dest and source server args
O scrpt deve ser fácil de personalizar para suas necessidades específicas, mas ainda não é extremamente robusto. Você pode ter que ajustar a localização do binário scp, seus arquivos ssh_key ou algo similar.
Que tal as maçãs? :)