How to get OS information on Unix-like systems with C

1 Answer

0 votes
#include <stdio.h>
#include <sys/utsname.h>

int main() {
    struct utsname buf;

    if (uname(&buf) == -1) {
        perror("uname");
        return 1;
    }

    printf("%s\n", buf.sysname);
    printf("%s\n", buf.nodename);
    printf("%s\n", buf.release);
    printf("%s\n", buf.version);
    printf("%s\n", buf.machine);

    return 0;
}



/*
run:

Linux
prod-repl-c-74fc9fb589-bbvqz
6.6.72+
#1 SMP PREEMPT_DYNAMIC Sun Apr 27 08:53:34 UTC 2025
x86_64

*/

 



answered Jun 6, 2025 by avibootz

Related questions

1 answer 79 views
1 answer 81 views
1 answer 126 views
1 answer 66 views
3 answers 109 views
...