dein Name Ranking & Zusammenfassung
- Name des Herausgebers:
- Kevin Waldron
- Website des Verlags:
- http://www.zazzybob.com/sh_config.html
dein Name Stichworte
dein Name Beschreibung
uname ist eine spezielle Version von uname. uname ist eine spezielle Version von uname. Unterstützt -a, -s, -r, -n, -v -m options.USAGE: uname -s den Kernel-Name-v Drucken Sie die Kernel-Version-r Drucken der Kernel-Release-n Drucken der Netzknoten Drucken Host-Name-m die Maschine Hardware-Name-a drucken alle der aboveWithout Optionen drucken, wirkt uname wie uname -sSample: #include #include #include #include #include void print_usage (void); int main (int argc, char * argv []) {int c; extern char * OPTARG; extern int OPTIND, optopt; int A_flag = 0, s_flag = 0, n_flag = 0, r_flag = 0, v_flag = 0, m_flag = 0; int errflag = 0; char host ; struct utsname UTS; if (gethostname (Host, 255) = 0 || uname (UTS) <0!) {fprintf (stderr, "Kann Host-Informationn bekommen"); Ausgang (1); } / * Wenn keine Optionen, dann nur Sysname * / if (argc == 1) {s_flag = 1 drucken; } Else {while ((c = getopt (argc, argv "asnrvm"))! = -1) {switch (c) {case 'a': A_flag = 1; brechen; case 's': s_flag = 1; brechen; case 'n': n_flag = 1; brechen; case 'r': r_flag = 1; brechen; case 'v': v_flag = 1; brechen; case 'm': m_flag = 1; brechen; Fall: errflag ++; '?' brechen; }}} / * Muss gewesen eine oder mehr fehlerhaften Optionen bestanden hat - Info Druckernutzung und Ausgang * / if (errflag = 0!) {Print_usage (); Ausgang (1); } Char * sysname, * Maschine, * nodename, * Release-Version *; sysName = uts.sysname; machine = uts.machine; nodename = uts.nodename; RELEASE = uts.release; version = uts.version; if (A_flag == 1) {printf ( "% s% s% s% s% sn", sysName, nodename, Freigabe, Version, Maschine); } Else {char * printstring; / * Genügend Platz für alle Eventualitäten vergeben .... * / printstring = (char *) malloc (strlen (sysname) + strlen (Version) + strlen (release) + strlen (nodename) + strlen (Maschine) 6); strcpy (printstring, ""); if (s_flag == 1) {strcat (printstring, sysName); strcat (printstring, "); } If (n_flag == 1) {strcat (printstring, Knotenname); strcat (printstring, "); } If (r_flag == 1) {strcat (printstring, release); strcat (printstring, "); } If (v_flag == 1) {strcat (printstring, Version); strcat (printstring, "); } If (m_flag == 1) {strcat (printstring, Maschine); strcat (printstring, "); } Puts (printstring); frei (printstring); } Return 0;} void print_usage (void) {char * usage [] = { "uname - (C) 2004 Kevin Waldron", "unter den Bedingungen der GNU General Public License", "USAGE:", uname , "-s den Kernel Name drucken", "-v die Kernel-Version", "drucken Sie die Kernel-Release -r drucken", "-n den Netzwerkknoten Hostname", "drucken der Maschine Hardware-Name" -m drucken , "", "Ohne Optionen "-a alle oben drucken", uname wirkt wie uname -s"}; int i = 0; for (i = 0; i <12; i ++) {printf ( "% sn", * (usage + i)); }}
dein Name Zugehörige Software