Linuxでの修正

このコミットが含まれているのは:
守矢諏訪子 2024-06-17 22:54:24 +09:00
コミット 3d418e6669
2個のファイルの変更22行の追加13行の削除

ファイルの表示

@ -3,31 +3,39 @@
#include <stdio.h>
#include <string.h>
#include <unistd.h>
void display_distro() {
char buf[64];
const char *cmd;
char buf[1288];
const char *cmd = NULL;
if (access("/bedrock/etc/bedrock-release", F_OK) != -1) {
cmd = "cat /bedrock/etc/bedrock-release";
cmd = "cat /bedrock/etc/bedrock-release | grep '^PRETTY_NAME' | "
"cut -d '=' -f2 | tr -d '\"'";
} else if (access("/etc/redstar-release", F_OK) != -1) {
cmd = "echo \"Red Star OS\" && cat /etc/redstar-release | awk -F'[^0-9]' '$0=$2'";
cmd = "echo \"Red Star OS\" && cat /etc/redstar-release | "
"awk -F'[^0-9]' '$0=$2'";
} else if (access("/etc/siduction-version", F_OK) != -1) {
cmd = "echo \"Siduction\" && lsb_release -sic";
cmd = "echo \"Siduction\" && lsb_release -sic | "
"grep '^PRETTY_NAME' | cut -d '=' -f2 | tr -d '\"'";
} else if (access("/etc/mcst_version", F_OK) != -1) {
cmd = "echo \"OS Elbrus\" && cat /etc/mcst_version";
cmd = "echo \"OS Elbrus\" && cat /etc/mcst_version | "
"grep '^PRETTY_NAME' | cut -d '=' -f2 | tr -d '\"'";
} else if (access("/etc/GoboLinuxVersion", F_OK) != -1) {
cmd = "echo \"GoboLinux\" && cat /etc/GoboLinuxVersion";
cmd = "echo \"GoboLinux\" && cat /etc/GoboLinuxVersion | "
"grep '^PRETTY_NAME' | cut -d '=' -f2 | tr -d '\"'";
} else if (access("/etc/os-release", F_OK) != -1) {
cmd = "cat /etc/os-release";
cmd = "cat /etc/os-release | "
"grep '^PRETTY_NAME' | cut -d '=' -f2 | tr -d '\"'";
} else if (access("/usr/lib/os-release", F_OK) != -1) {
cmd = "cat /usr/lib/os-release";
cmd = "cat /usr/lib/os-release | "
"grep '^PRETTY_NAME' | cut -d '=' -f2 | tr -d '\"'";
} else if (access("/etc/openwrt_release", F_OK) != -1) {
cmd = "cat /etc/openwrt_release";
cmd = "cat /etc/openwrt_release | "
"grep '^PRETTY_NAME' | cut -d '=' -f2 | tr -d '\"'";
} else if (access("/etc/lsb-release", F_OK) != -1) {
cmd = "cat /etc/lsb-release";
cmd = "cat /etc/lsb-release | "
"grep '^DISTRIB_DESCRIPTION' | cut -d '=' -f2 | tr -d '\"'";
} else {
perror("不明なディストリビューション。");
}

ファイルの表示

@ -32,7 +32,8 @@ void display_host_model() {
#elif defined(__sun)
run_command("prtconf -b | awk -F':' '/banner-name/ {printf $2}'");
#elif defined(__linux__)
const char *cmd1, *cmd2;
const char *cmd1 = NULL;
const char *cmd2 = NULL;
if (access("/system/app/", F_OK) != -1) {
cmd1 = "getprop ro.product.brand";
cmd2 = "getprop ro.product.model";