Qt執行bash命令並獲取返回結果

當我們在命令行執行相應操作時,會有對應的結果顯示,如在ubuntu的終端輸入:ls,顯示如下:

tck@tck:~/learn/MyProcess/MyProcess$ ls
main.cpp  MyProcess.pro  MyProcess.pro.user
tck@tck:~/learn/MyProcess/MyProcess$ 

那麼當我們代碼中執行相應的bash命令,如何獲取返回的結果呢?

Qt提供了相應的接口,代碼如下:

#include <QProcess>
#include <QDebug>

int main()
{
    //QProcess用於啓動外部程序
    QProcess process;
    //執行ls命令
    process.start("ls");
    //等待命令執行結束
    process.waitForFinished();
    //獲取命令執行的結果
    QByteArray result_ = process.readAllStandardOutput();
    //打印結果
    qDebug() << result_;
}

打印的結果如下:

"main.o\nMakefile\nMyProcess\n"

 

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