1.QT添加头文件
#include<QProcess>
#include<QFile>
#include<QString>
#include<QTextStream>
2.新建一个函数,如下:
void test::termTest()
{
system("gnome-terminal -- bash -c 'touch 2.sh'&");//QT调用命令行,创建一个名为2.sh的脚本文件,注意,当前目录是build-${PROJECT_NAME}-DESTTOP-DEBUG文件夹,生成的2.sh也在这个文件夹
QFile *myFile;
QTextStream *outFile;
QString filename="./2.sh";
myFile=new QFile(filename);
myFile->open(QIODevice::WriteOnly | QIODevice::Text);
outFile=new QTextStream(myFile);
*outFile<<"#!/bin/bash\n";//注意,每句话后面必须有\n换行
*outFile<<"ls\n";//发现当前目录是2.sh目录,即build目录
*outFile<<"sleep 4\n";//等4s
*outFile<<"exit 0\n";//关闭终端
myFile->close();
system("gnome-terminal -- bash -c 'chmod +x ./2.sh'&");//加执行权限
system("gnome-terminal -- bash -c './2.sh'&");//执行脚本
}
生成的2.sh如下:
3.调用这个函数
注意:
ubuntu可执行脚本文件后缀为.sh
文件第一行为#!/bin/bash
创建完.sh文件后要chmod +x