|
|
|
@ -444,6 +444,32 @@ ram_used(const char *null) |
|
|
|
return smprintf("%f", (float)used / 1024 / 1024); |
|
|
|
} |
|
|
|
|
|
|
|
/* custom shell command */ |
|
|
|
char * |
|
|
|
run_command(const char* command) |
|
|
|
{ |
|
|
|
FILE *fp; |
|
|
|
char buffer[64]; |
|
|
|
|
|
|
|
/* try to open the command output */ |
|
|
|
if (!(fp = popen(command, "r"))) { |
|
|
|
fprintf(stderr, "Could not get command output for: %s.\n", command); |
|
|
|
return smprintf("n/a"); |
|
|
|
} |
|
|
|
|
|
|
|
/* get command output text, save it to buffer */ |
|
|
|
fgets(buffer, sizeof(buffer)-1, fp); |
|
|
|
|
|
|
|
/* close it again */ |
|
|
|
pclose(fp); |
|
|
|
|
|
|
|
/* add nullchar at the end */ |
|
|
|
buffer[strlen(buffer) - 1] = '\0'; |
|
|
|
|
|
|
|
/* return the output */ |
|
|
|
return smprintf("%s", buffer); |
|
|
|
} |
|
|
|
|
|
|
|
/* temperature */ |
|
|
|
char * |
|
|
|
temp(const char *file) |
|
|
|
|