Passando parâmetros com getopt
Publicado por Andre Luiz da Silva 02/05/2004
[ Hits: 11.981 ]
Homepage: http://localhost
Esse é um simples código demonstrando como manipular parâmetros passados para um programa usando a função "getopt".
#include <stdio.h>
#include <unistd.h>
#include <errno.h>
void help()
{
printf ("Olah.... eu sou o a funcao help!");
}
void verbose ()
{
printf ("Olah... eu sou a verbose!! \n");
}
int print (char *file, char *string)
{
FILE *fd;
if ((fd = fopen (file, "w")) == NULL)
{
printf ("fopen(): %s \n", strerror(errno));
exit (1);
}
fprintf (fd, "%s", string);
fclose (fd);
return 0;
}
int opterr = 0;
int main(int argc, char **argv)
{
char *file = NULL, *phase = NULL;
if (argc == 1)
{
printf ("Nao tem argumento! Falowz... \n");
exit (0);
}
while (1)
{
int opt;
opt = getopt (argc, argv, "hvp:f:");
switch (opt)
{
case 'h':
help();
break;
case 'v':
verbose();
break;
case 'p':
phase = optarg;
break;
case 'f':
file = optarg;
break;
}
if (opt == -1)
break;
if (opt == '?')
{
printf ("%c: This option don't exists!\n", optopt);
break;
}
}
if (phase != NULL && file != NULL)
{
print (file, phase);
exit(0);
}
return 0;
}
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como montar um servidor de backup no linux
Trazendo de volta o Serviços em Segundo Plano no Plasma6
Ativando e usando "zoom" no ambiente Cinnamon
Vídeo Nostálgico de Instalação do Conectiva Linux 9
Como realizar um ataque de força bruta para desobrir senhas?
780 mil usuários do Janelas baIxaram Linux em um mês (3)
Servidor para arquivos e banco de dados (2)
Atualizei meu ubuntu e desliguei e ele não inicia corretamente (12)









