Replace fetchy.c

This commit is contained in:
Јован Ђокић-Шумарац 2021-05-04 14:46:09 +00:00
parent 6b32433d6a
commit a9d0c2d057

View file

@ -10,9 +10,10 @@ void getGPU(char gpu[]);
void getKernel(char kernel[]);
void getUptime(int *hr, int *min);
void getPackages(int *pkgs, char sys);
void getRAM(float *total, float *used, char bar[]);
void init(char gpu[], char cpu[], char kernel[], char syst[], char *sys, int *hr, int *min, int *pkgs){
void init(char gpu[], char cpu[], char kernel[], char syst[], char *sys, int *hr, int *min, int *pkgs, float *total, float *used, char bar[]){
getSys(syst, sys);
getGPU(gpu);
@ -20,7 +21,7 @@ void init(char gpu[], char cpu[], char kernel[], char syst[], char *sys, int *hr
getKernel(kernel);
getUptime(hr, min);
getPackages(pkgs, *sys);
getRAM(total, used, bar);
}
@ -29,10 +30,12 @@ void init(char gpu[], char cpu[], char kernel[], char syst[], char *sys, int *hr
int main(int argc, char *argv[]){
int hr, min, pkgs;
int hr = 0, min = 0, pkgs = 0;
char kernel[50], cpu[70], gpu[70], syst[20], sys;
char bar[] = "[----------]";
float total = 0, used = 0;
init(gpu, cpu, kernel, syst, &sys, &hr, &min, &pkgs);
init(gpu, cpu, kernel, syst, &sys, &hr, &min, &pkgs, &total, &used, bar);
if ( !strcmp(argv[1], "-arch") ) {
@ -45,7 +48,7 @@ int main(int argc, char *argv[]){
printf("\x1b[1m / .-. \\ \x1b[36m\x1b[0m \n");
printf("\x1b[1m / ( ) _\\ \x1b[36mCPU\x1b[0m: %s\n", cpu);
printf("\x1b[1m / _.~ ~._^\\ \x1b[36mGPU\x1b[0m: %s\n", gpu);
printf("\x1b[1m /.^ ^.\\ \x1b[36m\x1b[0m \n");
printf("\x1b[1m /.^ ^.\\ \x1b[36mRAM\x1b[0m: %.2f GB of %.2f GB, %s -> %.2f %%\n", used / 1000000, total / 1000000, bar, (used/total) * 100);
printf("\n\n");
}
@ -60,7 +63,7 @@ int main(int argc, char *argv[]){
printf("\x1b[1m .-. , `___: \x1b[36m\x1b[0m \n");
printf("\x1b[1m (:::) : ___ \x1b[36mCPU\x1b[0m: %s\n", cpu);
printf("\x1b[1m `-` ` , : \x1b[36mGPU\x1b[0m: %s\n", gpu);
printf("\x1b[1m \\ / ,..-` , \x1b[36m\x1b[0m \n");
printf("\x1b[1m \\ / ,..-` , \x1b[36mRAM\x1b[0m: %.2f GB of %.2f GB, %s -> %.2f %%\n", used / 1000000, total / 1000000, bar, (used/total) * 100);
printf("\x1b[1m `./ / .-.` \x1b[36m\x1b[0m \n");
printf("\x1b[1m `-..-( ) \x1b[36m\x1b[0m \n");
printf("\x1b[1m `-` \x1b[36m\x1b[0m \n");
@ -141,3 +144,17 @@ void getPackages(int *pkgs, char sys){
fclose(packages);
}
void getRAM(float *total, float *used, char bar[]){
int usedPercent;
FILE *RAM = popen("free | grep Mem", "r");
fscanf(RAM, "%s %f %f ", dump, total, used);
fclose(RAM);
usedPercent = (int) (((*used) / (*total)) * 10);
for( int i = 1; i <= usedPercent; i++){
bar[i] = '*';
}
}