我想通过在Linux中运行
当我在终端中运行以下命令时,它完美地工作:
QProcess
命令来重新启动计算机。 我已经在我的应用程序中硬编码了根密码。当我在终端中运行以下命令时,它完美地工作:
echo myPass | sudo -S shutdown -r now
当我将命令放入一个 shell 脚本中,并通过 QProcess
调用它时,也是成功的:
QProcess process;
process.startDetached("/bin/sh", QStringList()<< "myScript.sh");
但是我无法直接通过传递给QProcess
来运行它:
process.startDetached("echo myPass | sudo -S shutdown -r now ");
它只会打印出myPass | sudo -S shutdown -r now
如何直接使用QProcess
运行这样相对复杂的命令。(而不是放在shell脚本中)