uname

Tela Software:
uname
Detalhes de Software:
Versão: 0.1
Data de upload: 2 Jun 15
Revelador: Kevin Waldron
Licença: Livre
Popularidade: 6

Rating: nan/5 (Total Votes: 0)

uname é uma versão especial do uname. Suporta -a, -s, -r, -n, -v, -m opções.
USO: uname [opções]
-s Imprimir o nome do kernel
-v Exibe a versão do kernel
-r Imprimir a versão do kernel
-n Imprimir o nó hostname rede
-m Imprimir o nome do hardware da máquina
-a Imprimir todos os itens acima
Sem opções, uname age como -s uname
Amostra:
#include
#include
#include
#include
#include
print_usage void (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;
   carvão animal hospedeiro [256];
   uts struct utsname;
   if (gethostname (host, 255)! = 0 || uname (& UTS) <0)
   {
      fprintf (stderr, "Não é possível obter informationn host");
      saída (1);
   }
   / * Se não há opções, em seguida, basta imprimir sysname * /
   if (argc == 1) {
     s_flag = 1;
   }
   outro
   {
     while ((c = getopt (argc, argv, "asnrvm"))! = -1)
     {
        switch (c) {
         caso 'a':
            a_flag = 1;
            parar;
         caso 's':
            s_flag = 1;
            parar;
         caso 'n':
            n_flag = 1;
            parar;
         caso 'r':
            r_flag = 1;
            parar;
         caso 'v':
            v_flag = 1;
            parar;
         caso 'm':
            m_flag = 1;
            parar;
         caso '?':
            errflag ++;
            parar;
       }
      }
    }
    / * Deve ter sido uma ou mais opções erradas passado -
imprimir informações de uso e de saída * /
    se (errflag! = 0)
    {
        print_usage ();
        saída (1);
    }
    
    char * sysname, * máquina, * nodename, * libertação, * versão;
    sysname = uts.sysname;
    máquina = uts.machine;
    nodename = uts.nodename;
    libertar = uts.release;
    version = uts.version;
    se (a_flag == 1) {
      printf ("% s% s% s% s% sn", sysname, nodename, liberação, versão,
              máquina);
    }
    outro
    {
       char * PrintString;
       / * Alocar espaço suficiente para todas as eventualidades .... * /
       PrintString = (char *) malloc (strlen (sysname) +
                                    strlen (versão) +
                                    strlen (release) +
                                    strlen (nodename) +
                                    strlen (máquina) 6);
       strcpy (PrintString, "");
       se (s_flag == 1) {
         strcat (PrintString, sysname);
         strcat (PrintString, "");
       }
       se (n_flag == 1) {
         strcat (PrintString, nodename);
         strcat (PrintString, "");
       }
se (r_flag == 1) {
         strcat (PrintString, release);
         strcat (PrintString, "");
       }
se (v_flag == 1) {
         strcat (PrintString, versão);
         strcat (PrintString, "");
       }
       se (m_flag == 1) {
         strcat (PrintString, máquina);
         strcat (PrintString, "");
       }
       puts (PrintString);
       livre (PrintString);
    }
   retornar 0;
}
print_usage void (void)
{
char * uso [] = {"uname - (C) 2004 Kevin Waldron",
"Distribuído sob os termos da GNU General Public Licence",
"USO:", "uname [opções]",
"-s Imprimir o nome do kernel",
"-V Imprime a versão do kernel",
"-r Imprimir a versão do kernel",
"-n Imprimir o nó hostname rede",
"-m Imprimir o nome do hardware da máquina",
"-a Imprimir todas as anteriores",
"", "Sem opções, uname age como -s uname"};
    int i = 0;
for (i = 0; i <12; i ++)
{
printf ("% sn", * (uso + i));
}
}

Outro software de desenvolvedor Kevin Waldron

ZMsgServer
ZMsgServer

3 Jun 15

getconf
getconf

2 Jun 15

Comentário para uname

Comentários não encontrado
Adicionar comentário
Ligue imagens!