要从C++程序运行bash脚本,您可以使用以下方法:
system()
函数:#include<iostream>
#include <cstdlib>
int main() {
std::cout << "Executing bash script..."<< std::endl;
int result = system("/path/to/your/script.sh");
if (result == 0) {
std::cout << "Script executed successfully."<< std::endl;
} else {
std::cout << "Script execution failed."<< std::endl;
}
return 0;
}
popen()
和pclose()
函数:#include<iostream>
#include <cstdio>
#include <cstdlib>
int main() {
std::cout << "Executing bash script..."<< std::endl;
FILE* pipe = popen("/path/to/your/script.sh", "r");
if (!pipe) {
std::cout << "Script execution failed."<< std::endl;
return 1;
}
char buffer[128];
while (fgets(buffer, sizeof(buffer), pipe) != NULL) {
std::cout<< buffer;
}
int result = pclose(pipe);
if (result == 0) {
std::cout << "Script executed successfully."<< std::endl;
} else {
std::cout << "Script execution failed."<< std::endl;
}
return 0;
}
请注意,这些方法都需要在C++程序中包含相应的头文件,并且需要确保您的系统上已经安装了bash。此外,您需要确保您的bash脚本具有执行权限。
云+社区技术沙龙[第14期]
高校公开课
小程序云开发官方直播课(应用开发实战)
云+社区技术沙龙[第5期]
云+社区技术沙龙[第17期]
云+社区沙龙online第5期[架构演进]
云+社区技术沙龙[第10期]
腾讯技术创作特训营第二季第2期
云+社区开发者大会 长沙站
DBTalk技术分享会
领取专属 10元无门槛券
手把手带您无忧上云