rsync以"stdin is not tty"消息退出

Pra*_*jan 8 ssh rsync tty

我想将rsync用于我有SSH访问权限的远程服务器.我使用以下命令:

rsync -e'ssh -p 22222'-rtz --delete content_dir/user@example.com:/ home/user/public_html

输入命令后,它会询问远程位置的密码.当我输入它时,它会随消息退出,

stdin:不是tty

如何为rsync提供密码?当我在shell脚本中使用它时,建议的方法也应该工作.

小智 19

你需要添加:

[-z"$ PS1"] &&返回

到你家里的.bashrc的开头.

  • 你能解释一下这实际上有什么用吗?[-z"$ PS1"]有什么作用? (2认同)

小智 2

正如您自己所说,操作确实发生了,此处正在接受密码

错误消息“stdin:不是 tty”是由于服务器上的启动脚本中的某些内容试图处理仅应在交互式登录时发生的操作(当您使用 ssh 直接连接到服务器时等)。