在Qt中执行一个shell指令常用QProcess类来完成,常见的用法示例如下:
QProcess process;
process.start("find /opt/ -name ts_calibrate"); //str是需要执行的命令
flag = process.waitForFinished(); //flag是执行成功的标志
当需要执行多条语句时,用法如下:
先封装一个命令执行的函数:
QString ViewManager::execCommand(const QString &cmd)
{
QProcess process;
process.start(cmd);
process.waitForFinished();
QByteArray output = process.readAllStandardOutput();
QString str_output = output;
return str_output;
}
执行命令时调用execCommand即可,用法示例如下:
QString outputStr = execCommand("find /opt/ -name ts_calibrate");
QProcess process;
process.start(outputStr );
flag = process.waitForFinished();