mirror of
https://github.com/amadvance/snapraid.git
synced 2026-10-26 19:01:57 -04:00
Pad the SMART report to have it looks better
This commit is contained in:
parent
80982a8455
commit
1796d1cd01
1 changed files with 54 additions and 3 deletions
|
|
@ -153,9 +153,44 @@ static double smart_afr(uint64_t* smart)
|
|||
return afr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prints a string with space padding.
|
||||
*/
|
||||
static void printl(const char* str, size_t pad)
|
||||
{
|
||||
size_t len;
|
||||
|
||||
printf(str);
|
||||
|
||||
len = strlen(str);
|
||||
|
||||
while (len < pad) {
|
||||
printf(" ");
|
||||
++len;
|
||||
}
|
||||
}
|
||||
|
||||
static void state_smart(tommy_list* low)
|
||||
{
|
||||
tommy_node* i;
|
||||
size_t device_pad;
|
||||
size_t serial_pad;
|
||||
|
||||
/* compute lengths for padding */
|
||||
device_pad = 0;
|
||||
serial_pad = 0;
|
||||
for (i = tommy_list_head(low); i != 0; i = i->next) {
|
||||
size_t len;
|
||||
devinfo_t* devinfo = i->data;
|
||||
|
||||
len = strlen(devinfo->file);
|
||||
if (len > device_pad)
|
||||
device_pad = len;
|
||||
|
||||
len = strlen(devinfo->smart_serial);
|
||||
if (len > serial_pad)
|
||||
serial_pad = len;
|
||||
}
|
||||
|
||||
printf("SnapRAID SMART report:\n");
|
||||
printf("\n");
|
||||
|
|
@ -168,7 +203,9 @@ static void state_smart(tommy_list* low)
|
|||
printf(" Count");
|
||||
printf(" AFR");
|
||||
printf(" Size");
|
||||
printf(" Serial/Name");
|
||||
printf(" "); printl("Serial", serial_pad);
|
||||
printf(" "); printl("Device", device_pad);
|
||||
printf(" Name");
|
||||
printf("\n");
|
||||
printf(" --------------------------------------------------------------------------\n");
|
||||
|
||||
|
|
@ -202,9 +239,23 @@ static void state_smart(tommy_list* low)
|
|||
else
|
||||
printf(" -");
|
||||
|
||||
printf(" %s", devinfo->smart_serial);
|
||||
printf(" ");
|
||||
if (*devinfo->smart_serial)
|
||||
printl(devinfo->smart_serial, serial_pad);
|
||||
else
|
||||
printl("-", serial_pad);
|
||||
|
||||
printf("/%s", devinfo->name);
|
||||
printf(" ");
|
||||
if (*devinfo->file)
|
||||
printl(devinfo->file, device_pad);
|
||||
else
|
||||
printl("-", device_pad);
|
||||
|
||||
printf(" ");
|
||||
if (*devinfo->name)
|
||||
printf("%s", devinfo->name);
|
||||
else
|
||||
printf("-");
|
||||
|
||||
printf("\n");
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue