#include<stdio.h>
#include<unistd.h>
long getNum(char *str, int len)
{
long tmp = 0;
for (int i = 0; i < len; i++)
{
tmp = tmp * 10 + (str[i] == ' ' ? 0 : (str[i] - '0'));
}
return tmp;
}
int main()
{
while (1)
{
FILE *file = popen("cat /proc/meminfo", "r");
char buf[100];
long total = 0;
long avi = 0;
char str[7];
fgets(buf, 100, file);
for (int i = 17; i < 24; i++)
str[i - 17] = buf[i];
total = getNum(str, 7);
fgets(buf, 100, file);
for (int i = 17; i < 24; i++)
str[i - 17] = buf[i];
avi = getNum(str, 7);
printf("Total: %ld MB Aviliable: %ld MB Used: %d MB", total / 1000,
avi / 1000, (total - avi) / 1000);
puts("");
//fputs (buf , stdout);
sleep(1);
pclose(file);
}
return 0;
}