我最近开始使用Linux,所以我对此知之甚少。至少我知道Linux的每件东西都是文件。
我想知道如何捕捉到特定的 Linux 系统返回, 例如如果我选择安装 Ruby (sudo apt- get -y install Ruby), 我怎么知道它安装成功?
char buffer[1024];
char *buf = malloc(4096);
char *pl;
FILE *fp;
if (strcmp(cmd, "ruby") == 0)
{
fp = popen("sudo apt-get -y install ruby", "r");
}
if (fp == NULL)
{
printf("Failed to load file
");
exit(0);
}
while ((pl = fgets(buffer, sizeof(buffer), fp)) != NULL)
{
strcat(buf, buffer);
}
strcat(buf, "
");
pclose(fp);
然后,我用popen读取打开的文件, 但它包含相同的文件, 显示在终端中, 我只想有像OK或FAIL这样的旗帜。
对不起,我可怜的英语。