Qt中执行多条shell语句

在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();

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章