1

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

4

2 回答 2

0

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

scp、ssh、sftp 等故意使密码难以获取,而不是直接从用户那里获取密码。具体来说,诸如此类的事情expect将不起作用。如果他们这样做了,他们就不会安全。

于 2012-05-11T09:41:26.860 回答
0

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

  • 创建一个公钥/私钥并分发它们,这样您就不需要提示输入密码了。关于这个主题的一篇有趣的论文在这里
  • 创建一个expect脚本并使用 QProcess 调用它
于 2012-05-11T09:39:42.627 回答