我使用rsync来更新我的静态网站。我当前cd
到本地网站目录,并运行rsync
命令,然后在下一行输入密码。我已将rsync
来电保存到文本摘要中(_rs
只会扩展到我的通话中)。有没有办法在最后使用类似-p
标志的内容并包含密码?
我的电话如下:
rsync -avzh -e ssh * foo@foo.org:"/home/foo/public_html/"
答案 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 "#"