如何从Qt调用SCP命令

时间:2012-05-11 09:32:29

标签: qt

我想通过SCP命令将文件从本地机器复制到远程服务器。我能够通过Cygwin复制文件。现在我想通过Qt实现这一目标。我如何调用'SCP'命令?如果我使用QProcess,那么我将如何了解密码提示?

2 个答案:

答案 0 :(得分:0)

正如我所知,你会遇到同样的问题, scp 会提示您输入密码,无论您尝试调用该命令的方式(即使您尝试编写 bash 例如,调用 scp 的脚本 我知道的可能解决方案包括:

  • 创建一个公钥/私钥并分发它们,这样就不需要提示您输入密码。关于该主题的一篇有趣的论文是here
  • 创建expect脚本并使用QProcess
  • 调用它

答案 1 :(得分:0)

要求您的用户使用公钥,问题就解决了:https://hkn.eecs.berkeley.edu/~dhsu/ssh_public_key_howto.html

scp,ssh,sftp等故意使得除了直接来自用户之外的密码很难。具体来说,像expect这样的东西是行不通的。如果他们这样做,他们将不安全。