2011-12-02 69 views
0

我正在试图制作一个bash脚本,它将把文件从我的机器传输到由我的学校维护的用于备份代码的服务器。每次我想进行传输时手动传输文件都是一件麻烦事。通过SSH的Bash文件备份

某些应用程序(如TextWrangler)可以保存到服务器。但是,我宁愿能够从终端快速完成。

我该从哪里出发?我是否需要以某种方式传递我想作为参数发送的文件?有没有办法确保它进入正确的目录?

#!/bin/bash 
# This should log me into orca 
# http://aruljohn.com/info/filetransfer/ 
# http://stackoverflow.com/questions/1895185/how-to-ssh-from-within-a-bash-script 
sftp [email protected] 
expect "[email protected] password: " 
sleep 1 
send "mypassword" 
+0

也许这个问题会得到更好的答案在serverfault或Ubuntu。 –

回答

2

为什么不使用“scp”安全副本而不是sftp。

您不需要“期待”来运行此操作,并且,如果正确配置远程/本地证书,则不需要混淆密码。

查看一些examples它可以是多么简单。和完整的how to文档。

+1

'scp'可能足以满足您目前的需求。如果你的场景变得更复杂,我建议看看'rsync'(可以使用ssh),请参阅http://www.samba.org/ftp/rsync/rsync.html。 –