直接上代码块,简单易懂
#include<stdio.h>
#include<iostream>
#include<sstream>
//. system() popen() 其原理都是fork()一个子进程来调用/bin/sh-c string 来执行string表示的命令
std::string command_sys(const char* cmd) {
if (FILE* fp = popen(cmd, "r")) {
std::ostringstream stm;
char line[128];
while (fgets(line, 128, fp)) {
stm << line;
}
pclose(fp);
return stm.str();
}
return "";
}
int main()
{
system("mkdir /home/test");//执行命令,没有返回值
std::string ret=command_sys("lsblk -f");
std::cout<<ret<<std::endl;
return 0;
}