tu nombre Clasificación y resumen
- Nombre del editor:
- Kevin Waldron
- Sitio web del editor:
- http://www.zazzybob.com/sh_config.html
tu nombre Etiquetas
tu nombre Descripción
Uname es una versión especial de uname. Uname es una versión especial de uname. Soportes -a, -s, -R, -N, -V, -M Options.usage: uname -s Imprimir el kernel name-v Imprimir la versión de kernel-r Imprimir el kernel versión-n Imprimir el nodo de red HostName-M Imprima el nombre del hardware de la máquina: una impresión de todas las opciones anteriores, las acciones de uname como uname -sample: #include #include #include #include #include void print_usage (void); int main (int argc, char * argv []) {int c; Encargado externo * 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 errorflag = 0; anfitrión de char ; Struct UtsName UTS; Si (gethostname (host, 255)! = 0 || uname (uts) <0) {fprintf (stderr, "no se puede obtener la información de host"); Salida (1); } / * Si no hay opciones, simplemente imprima SYSNAME * / if (argc == 1) {s_flag = 1; } else {while ((C = getopt (argc, argv, "asnrvm"))! = -1) {switch (c) {caso 'a': a_flag = 1; descanso; Caso 's': s_flag = 1; descanso; Caso 'n': n_flag = 1; descanso; Caso 'R': R_FLAG = 1; descanso; Caso 'V': v_flag = 1; descanso; Caso 'M': M_FLAG = 1; descanso; Caso '?': Errflag ++; descanso; }}} / * Debe haber sido una o más opciones erróneas aprobadas: la información de uso de impresión y la salida * / if (errflag! = 0) {print_usage (); Salida (1); } char * sysname, * Machine, * NodoName, * versión, * versión; SYSNAME = UTS.SYSNAME; máquina = uts.machine; nodname = uts.nodename; liberación = uts.release; versión = uts.version; if (a_flag == 1) {printf ("% s% s% s% s% sn", sysname, nodo, versión, versión, máquina); } else {char * printstring; / * Asigne suficiente espacio para todas las eventualidades ... * / Printstring = (char *) malloc (Strlen (Sysname) + Strlle (versión) + Strlle (liberación) + Strllen (Nodo) + Strlle (Máquina) +6); Strcpy (Printstring, ""); if (s_flag == 1) {strcat (impresión, sysname); strcat (impresión, ""); } if (n_flag == 1) {strcat (impresión, nodonsame); strcat (impresión, ""); } if (r_flag == 1) {strcat (impresión, liberación); strcat (impresión, ""); } if (v_flag == 1) {strcat (impresión, versión); strcat (impresión, ""); } if (m_flag == 1) {strcat (impresión, máquina); strcat (impresión, ""); } pone (impresión); libre (impresión); Regreso 0;} void print_usage (void) {char * uso [] = {"uname - (c) 2004 Kevin Waldron", "distribuido bajo los términos de la Licencia Pública General de GNU", "Uso:", "ANAME "," imprime el nombre del kernel "," -v imprima la versión del kernel "," -r imprime el lanzamiento del kernel "," -n imprima el nombre de host de nodo de red "," -m imprime el nombre del hardware de la máquina " "-Una impresión todo lo anterior", "", "sin opciones, uname actúa como uname -s"}; int i = 0; para (i = 0; i <12; i ++) {printf ("% sn", * (uso + i)); }}
tu nombre Software relacionado