我可以在rsync呼叫中包含密码吗?

时间:2012-08-19 19:02:21

标签: rsync

我使用rsync来更新我的静态网站。我当前cd到本地网站目录,并运行rsync命令,然后在下一行输入密码。我已将rsync来电保存到文本摘要中(_rs只会扩展到我的通话中)。有没有办法在最后使用类似-p标志的内容并包含密码?

我的电话如下:

rsync -avzh -e ssh * foo@foo.org:"/home/foo/public_html/"

2 个答案:

答案 0 :(得分:2)

其中一个选项是使用公钥/私钥对,请参阅How to auto rsync with ssh passwordless

或者您可以尝试使用Expect

答案 1 :(得分:2)

通过直接回答问题来回答这个问题,在不太安全的情况下可能会有用。

#!/usr/bin/expect -f

set PASSPH "123456"
send_user "\n"
stty -echo

spawn rsync -apv -e ssh "/Volumes/Macintosh HD/Users/charliechaplin/test/" "charly@chaplin.com:/project/htdocs/site/"
expect "password:"
send "$PASSPH\n"
expect "#"