fix escape & if storage

このコミットが含まれているのは:
haturatu 2024-06-25 02:29:21 +09:00
コミット 028720b2d6
2個のファイルの変更33行の追加34行の削除

ファイルの表示

@ -265,7 +265,7 @@ void getDistro(const char *distroname) {
for (int i = 7; i < minsize; i++) { for (int i = 7; i < minsize; i++) {
LOGO_SMALL[i] = MAGENTA " " RESET; LOGO_SMALL[i] = MAGENTA " " RESET;
} }
} else if (strncmp(char *)distroname, "linuxmint", strlen("linuxmint")) == 0) { } else if (strncmp((char *)distroname, "linuxmint", strlen("linuxmint")) == 0) {
color = GREEN; color = GREEN;
titlecolor = GREEN; titlecolor = GREEN;
logosize = 19; logosize = 19;
@ -291,12 +291,12 @@ void getDistro(const char *distroname) {
LOGO[18] = WHITE " ``-:::::-`` " RESET; LOGO[18] = WHITE " ``-:::::-`` " RESET;
LOGO_SMALL[0] = GREEN " ___________ " RESET; LOGO_SMALL[0] = GREEN " ___________ " RESET;
LOGO_SMALL[1] = GREEN "|_ \ " RESET; LOGO_SMALL[1] = GREEN "|_ \\ " RESET;
LOGO_SMALL[2] = GREEN " | " WHITE "| _____ " GREEN "| " RESET; LOGO_SMALL[2] = GREEN " | " WHITE "| _____ " GREEN "| " RESET;
LOGO_SMALL[3] = GREEN " | " WHITE "| | | | " GREEN "| " RESET; LOGO_SMALL[3] = GREEN " | " WHITE "| | | | " GREEN "| " RESET;
LOGO_SMALL[4] = GREEN " | " WHITE "| | | | " GREEN "| " RESET; LOGO_SMALL[4] = GREEN " | " WHITE "| | | | " GREEN "| " RESET;
LOGO_SMALL[5] = GREEN " | " WHITE "\_____/ " GREEN "| " RESET; LOGO_SMALL[5] = GREEN " | " WHITE "\\_____/ " GREEN "| " RESET;
LOGO_SMALL[6] = GREEN " \_________/ " RESET; LOGO_SMALL[6] = GREEN " \\_________/ " RESET;
} else if (strncmp((char *)distroname, "manjaro", strlen("manjaro")) == 0) { } else if (strncmp((char *)distroname, "manjaro", strlen("manjaro")) == 0) {
color = GREEN; color = GREEN;
titlecolor = GREEN; titlecolor = GREEN;
@ -324,7 +324,7 @@ void getDistro(const char *distroname) {
LOGO_SMALL[4] = GREEN "|||| |||| |||| " RESET; LOGO_SMALL[4] = GREEN "|||| |||| |||| " RESET;
LOGO_SMALL[5] = GREEN "|||| |||| |||| " RESET; LOGO_SMALL[5] = GREEN "|||| |||| |||| " RESET;
LOGO_SMALL[6] = GREEN "|||| |||| |||| " RESET; LOGO_SMALL[6] = GREEN "|||| |||| |||| " RESET;
} else if (strncmp(char *)distroname, "opensuse", strlen("opensuse")) == 0) { } else if (strncmp((char *)distroname, "opensuse", strlen("opensuse")) == 0) {
color = GREEN; color = GREEN;
titlecolor = GREEN; titlecolor = GREEN;
logosize = 18; logosize = 18;
@ -349,11 +349,11 @@ void getDistro(const char *distroname) {
LOGO[17] = WHITE " '^:ldxkkkkxdl:^' " RESET; LOGO[17] = WHITE " '^:ldxkkkkxdl:^' " RESET;
LOGO_SMALL[0] = GREEN " _______ " RESET; LOGO_SMALL[0] = GREEN " _______ " RESET;
LOGO_SMALL[1] = GREEN "__| __ \ " RESET; LOGO_SMALL[1] = GREEN "__| __ \\ " RESET;
LOGO_SMALL[2] = GREEN " / .\ \ " RESET; LOGO_SMALL[2] = GREEN " / .\\ \\ " RESET;
LOGO_SMALL[3] = GREEN " \__/ | " RESET; LOGO_SMALL[3] = GREEN " \\__/ | " RESET;
LOGO_SMALL[4] = GREEN " _______| " RESET; LOGO_SMALL[4] = GREEN " _______| " RESET;
LOGO_SMALL[5] = GREEN " \_______ " RESET; LOGO_SMALL[5] = GREEN " \\_______ " RESET;
LOGO_SMALL[6] = GREEN "__________/ " RESET; LOGO_SMALL[6] = GREEN "__________/ " RESET;
} else if ( } else if (
strncmp((char *)distroname, strncmp((char *)distroname,
@ -397,7 +397,7 @@ void getDistro(const char *distroname) {
for (int i = 9; i < minsize; i++) { for (int i = 9; i < minsize; i++) {
LOGO_SMALL[i] = GREEN " " RESET; LOGO_SMALL[i] = GREEN " " RESET;
} }
} else if (strncmp(char *)distroname, "opensuse", strlen("opensuse")) == 0) { } else if (strncmp((char *)distroname, "opensuse", strlen("opensuse")) == 0) {
color = RED; color = RED;
titlecolor = RED; titlecolor = RED;
logosize = 20; logosize = 20;
@ -425,9 +425,9 @@ void getDistro(const char *distroname) {
LOGO_SMALL[0] = RED " _ " RESET; LOGO_SMALL[0] = RED " _ " RESET;
LOGO_SMALL[1] = RED " ---(_) " RESET; LOGO_SMALL[1] = RED " ---(_) " RESET;
LOGO_SMALL[2] = RED " _/ --- \ " RESET; LOGO_SMALL[2] = RED " _/ --- \\ " RESET;
LOGO_SMALL[3] = RED "(_) | | " RESET; LOGO_SMALL[3] = RED "(_) | | " RESET;
LOGO_SMALL[4] = RED " \ --- _/ " RESET; LOGO_SMALL[4] = RED " \\ --- _/ " RESET;
LOGO_SMALL[5] = RED " ---(_) " RESET; LOGO_SMALL[5] = RED " ---(_) " RESET;
} else if (strncmp((char *)distroname, "void", strlen("void")) == 0) { } else if (strncmp((char *)distroname, "void", strlen("void")) == 0) {
color = WHITE; color = WHITE;

ファイルの表示

@ -4,27 +4,26 @@
#include <string.h> #include <string.h>
const char *display_storage() { const char *display_storage() {
const char *excode = run_command_s("LC_ALL=C zpool list 2>/dev/null || echo $?");
if (excode != NULL && strcmp(excode, "127") == 0) {
return run_command_s("df -h | "
"awk '/^\\/dev\\// {printf \"%s: %s / %s, \", $1, $3, $2}' | "
"awk '{sub(/, $/, \"\"); print}'");
} else {
const char *iszfs = run_command_s("LC_ALL=C zpool list 2>&1"); const char *iszfs = run_command_s("LC_ALL=C zpool list 2>&1");
if ( if (
strncmp(
iszfs,
"sh: command not found: zpool",
strlen("sh: command not found: zpool")
) == 0 ||
strncmp(
iszfs,
"internal error: failed to initialize ZFS library",
strlen("internal error: failed to initialize ZFS library")
) == 0 ||
strncmp(iszfs, "sh: zpool: not found", strlen("sh: zpool: not found")) == 0 || strncmp(iszfs, "sh: zpool: not found", strlen("sh: zpool: not found")) == 0 ||
strncmp(iszfs, "sh: 1: zpool: not found", strlen("sh: 1: zpool: not found")) == 0 strncmp(iszfs, "sh: 1: zpool: not found", strlen("sh: 1: zpool: not found")) == 0
) { ) {
return run_command_s("df -h | " return run_command_s("df -h | "
"awk '/^\\/dev\\// {printf \"%s: %s / %s, \", $1, $3, $2}' | " "awk '/^\\/dev\\// {printf \"%s: %s / %s, \", $1, $3, $2}' | "
"awk '{sub(/, $/, \"\"); print}'"); "awk '{sub(/, $/, \"\"); print}'");
} } else {
return run_command_s("zpool list | " return run_command_s("zpool list | "
"awk 'NR>1 {printf \"%s: %s / %s, \", $1, $3, $2}' | " "awk 'NR>1 {printf \"%s: %s / %s, \", $1, $3, $2}' | "
"awk '{sub(/, $/, \"\"); print}'"); "awk '{sub(/, $/, \"\"); print}'");
} }
}
}