Compactando arquivos de log *.txt
Publicado por saymon castro de souza 12/06/2008
[ Hits: 7.532 ]
Algoritmo que pode ser colocado no cron para a compactação dos arquivos *.txt existentes em um diretório.
É muito interessante para a compactação de logs de banco de dados.
#include<stdio.h> #include<stdlib.h> #include<string.h> /* Este programa compacta todos arquivos txt existentes em um determinado diretorio */ int main(int argc, char **argv[]){ FILE *fp; char arquivo_temp[60], comando[80],arquivo_tar[60],arquivo[60]; if (strcmp(argv[1],"--h") == 0){ printf("##########################\n\n"); puts("Programa para compactar arquivos txt..."); printf("\n"); puts("Sintaxe: "); printf("\n"); puts(" #./compacta <DIRETORIO>"); printf("\n\n"); puts("Exemplo:"); printf("\n"); puts("#./compacta /tmp"); printf("\n"); puts("**compacta todos arquivos txt existentes em /tmp"); printf("\n#########################\n"); exit(0); } int i; char lista[80]="ls "; strcat(lista,argv[1]); strcat(lista,"/*.txt"); strcat(lista," > lista"); system(lista); fp = fopen("lista","r"); while(!feof(fp)){ /*fgets(string,60,fp)*/ fscanf(fp,"%s",arquivo_temp); for(i=0;i<strlen(arquivo_temp)-4;i++) strcat(arquivo[i],arquivo[i]; printf("\n\n%s\n\n",arquivo); /*criando o pacote tar*/ /*comando = 'tar -cf' arquivo_tar arquivo */ strcpy(comando,"tar -cf "); strcpy(arquivo_tar,arquivo); strcat(arquivo_tar,".tar"); strcat(comando,arquivo_tar); strcat(comando," "); strcat(comando,arquivo); system(comando); strcpy(comando,""); /*criando o pacote bz2*/ strcpy(comando,"bzip2 -z "); strcat(comando,arquivo_tar); system(comando); } system("rm *.txt -rf"); system("rm *.tar -rf"); fclose(fp); }
Cadastor de Produtos em C e metodos ordenação
Contando a quantidade de palavras de um arquivo texto
leitura/escrita de dados/estruturas em arquivo
Instale uma distro dentro de outra
Montando HD, Pendrive ou Pasta de Rede para Gravações de Ligações do Elastix e Módulo de Call Center
Como redimensionar o menu de aplicativos do KDE plasma 5.21
Instalando Drivers NVIDIA no Ubuntu 20.04
Não consigo instalar nada pelo terminal no Debian 10 (21)
Remover ou desabilitar pacote ou driver Linux (2)
Slackware 15: primeiras impressões (5)