QT的system函数实现在qt代码里面执行脚本语言
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
函数原型:
#include <stdlib.h>
int system(const char *command);
作用:system()通过调用/bin/sh-c命令执行命令中指定的命令,并在命令完成后返回。在命令执行期间,SIGCHLD将被阻止,SIGINT和SIGQUIT将被忽略。执行错误将会返回-1;
通俗来讲就是可以利用system函数执行shell终端命令,比如我们在linux终端敲打的ls 文件名的命令,在这里用system("ls test.txt");也可以做到。
补充1:说明一下这里提到的信号
产生方式 | 产生结果 | |
SIGINT | 键盘Ctrl+C | 只对当前前台进程,和他的所在的进程组的每个进程都发送SIGINT信号,之后这些进程会执行信号处理程序再终止. |
SIGQUIT | 在Linux上,也可以使用Ctrl-4 | 是当用户请求进程执行核心转储时由其控制终端发送到进程的信号 |
那么对于SIGCHLD信号来说,只有在以下三个条件中才会向父进程发送SIGCHLD信号:
1. 子进程终止时
2. 子进程接收到SIGSTOP信号停止时
3. 子进程处在停止态,接受到SIGCONT后唤醒时
补充2:在QT中使用脚本语言还有其他方式,比如
(1)QProcess:execute("ls");
(2)QProcess *process = new QProcess();
process->start("ls");
QProcess的方式不会阻塞,而其他两种会阻塞直到命令执行完。
GitHub 加速计划 / li / linux-dash
6
1
下载
A beautiful web dashboard for Linux
最近提交(Master分支:4 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献9条内容
所有评论(0)