Gerador de script

Publicado por Perfil removido 23/11/2006

[ Hits: 7.489 ]

Download gerador.c




Ele cria um script que faz teste de ping em vários pontos e depois envia para o seu e-mail. Para isso é necessário gerar um arquivo com a seguinte formatação:

[nome do ponto] [ip do ponto]

  



Esconder código-fonte

#include <stdio.h>
#include <stdlib.h>

#define TAMLINHA 128
 
main(int argc,char *argv[])
{
   FILE *arq,*arq0;
   char linha[TAMLINHA]="",c,*palavra1,*palavra2;
   int i=0,k=0;
   char ren[128]="";
   
   if(argc!=4) {printf("Usage: gerador [file] [nome para o script] [e-mail]\n");exit(1);}
   
   arq=fopen(argv[1],"r");
   arq0=fopen(argv[2],"w");
   
   while(!feof(arq))
      {
      i=0;k=0;
      fgets(linha,TAMLINHA,arq);
   
      while(linha[i++]!=' '){}
      palavra1=(char*)calloc(i,sizeof(char));
      i=0;
      while(linha[i]!=' ')
      {
         palavra1[i]=linha[i];
         i++;
      }
      while(linha[i++]!='\n'){k++;}
      i-=k;
      palavra2=(char*)calloc(k,sizeof(char));
      k=0;
      while(linha[i]!='\n')
      {
         palavra2[k]=linha[i];
         i++;
         k++;
   }
   fprintf(arq0,"echo \"%s\" |tee -a %s\n",palavra1,argv[2]);
   fprintf(arq0,"pinga -q %s |tee -a %s\n",palavra2,argv[2]);
   fprintf(arq0,"echo \"###############################\" |tee -a %s\n",argv[2]);
   fprintf(arq0,"echo \"\" |tee -a %s\n",argv[2]);
   }
   fprintf(arq0,"mail -s \"%s\" %s < %s",argv[2],argv[3],argv[2]);
   sprintf(ren,"mv %s %s.sh",argv[2],argv[2]);
   system(ren);
   sprintf(ren,"chmod 755 %s.sh",argv[2]);
   system(ren);
   fclose(arq);
   fclose(arq0);
}

Scripts recomendados

Copia uma linha selecionada para um arquivo secundário

Editar o arquivo /etc/rc.d/rc.local

Exemplo de manipulação de arquivos

Números de caracteres em arquivo

Leitura de arquivo texto separando as colunas


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts