Escaneando diretório

Publicado por euteste da silva (última atualização em 30/11/2010)

[ Hits: 4.761 ]

Download lerdir.c




Escaneando diretório e imprimindo os nomes dos arquivos regulares em maiúsculo.

  



Esconder código-fonte

/* compilar:  gcc lerdir -o lerdir    */
/* executar: lerdir /tmp                 */

#include<stdio.h>
#include<stdlib.h>
#include<dirent.h>
#include<ctype.h>
#include<sys/stat.h>

int main(int argc, char *argv[]) {

    DIR *diretorio;
    struct dirent *ndir;
    struct stat buf;
    int i;
  
    if(argc < 2){
        fprintf(stderr,"USO [ %s <diretorio> ]\n",argv[0]);
        exit(-1);
    } 

    diretorio=opendir(argv[1]);

    while(ndir=readdir(diretorio)){
        
        if(lstat(ndir->d_name,&buf)<0) 
      continue;

        if(S_ISREG(buf.st_mode)) {
            for(i=0;ndir->d_name[i];i++)
               printf("%c",toupper(ndir->d_name[i]));
            putchar('\n');
         }  
     }

    closedir(diretorio);
    exit(0);
}

Scripts recomendados

Cálculo de logaritmo de um número por Série de Taylor em C

Fibbonacci com Memoization - O(n)

Programa recursivo para obter raiz quadrada

Biblioteca estática para manipulação de pilhas

Busca em texto - Lista encadeada


  

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