Verificar arquivos em pasta
Pessoal tenho um script que exporta fotos de um banco para uma pasta e automaticamente faz a inserção em uma tabela paralela para controle, porem preciso averiguar quais as fotos já exportadas do banco que estão na pasta e tratar no banco as mesmas. Encontrei um pequeno script em bat para tal:
Porem precisava que o script informasse apenas a data e o nome da foto com extensão. Ex.: foto1.jpg;26/10/2017
Há alguma maneira de fazer em .BAT ou algum aplicativo que faça isso ?
/a - lista os atributos dos arquivos como arquivos de sistema, arquivos ocultos, somente leitura
/-p - cria uma pausa entre as telas, com o comando - antes não irá ter nenhuma pausa entre a listagem
/o:n - ordena os arquivos, no caso usamos o subparâmetro para listar somente o nome (:n)
/s - mostra o conteúdo dos subdiretórios
/b - mostra os arquivos e dierórios sem os artibutos como tamanho, data, etc.
em português claro um
dir /a /-p /o:n /s /b >lista.txt
./-p - cria uma pausa entre as telas, com o comando - antes não irá ter nenhuma pausa entre a listagem
/o:n - ordena os arquivos, no caso usamos o subparâmetro para listar somente o nome (:n)
/s - mostra o conteúdo dos subdiretórios
/b - mostra os arquivos e dierórios sem os artibutos como tamanho, data, etc.
em português claro um
dir /a /-p /o:n /s /b >lista.txt
Porem precisava que o script informasse apenas a data e o nome da foto com extensão. Ex.: foto1.jpg;26/10/2017
Há alguma maneira de fazer em .BAT ou algum aplicativo que faça isso ?
Chromusmaster
Curtidas 0
Respostas
Chromusmaster
09/11/2017
Consegui fazer em partes, mas ainda preciso refinar e melhorar o código na linguagem C. Precisava de buscasse agora a extensão e a data de criação e não de modificação do arquivo na pasta. Vejam:
Alguém tem alguma ideia ?
#include <stdio.h> #include <stdlib.h> #include <dirent.h> #include <sys/types.h> #include <sys/stat.h> #include <dirent.h> #include <unistd.h> int main(void) { struct stat { dev_t st_dev; /* ID do dispositivo */ ino_t st_ino; /* número do inode */ mode_t st_mode; /* modo de proteção */ dev_t st_rdev; /* ID do dispositivo se for arquivo especial */ off_t st_size; /* tamanho total em bytes */ time_t st_atime; /* hora do último acesso */ time_t st_mtime; /* hora da última modificação */ time_t st_ctime; /* hora da última troca de estado */ }; char *acc = (char *) malloc(sizeof(char) * 6); FILE *arq; int i; int result; DIR *dir; struct dirent *lsdir; dir = opendir("C:\\\\Users\\\\Natha\\\\Downloads\\\\"); arq = fopen("insert.csv", "wt"); /* print all the files and directories within directory */ if (arq == NULL) // Se nào conseguiu criar { printf("Problemas na CRIACAO do arquivo\\n"); return -1; } while ( ( lsdir = readdir(dir) ) != NULL ) { printf ("%s\\n",lsdir->d_name ); printf(ctime( &(lsdir) )); result = fprintf(arq,lsdir->d_name); result = fprintf(arq,"\\n"); } printf("\\n"); printf(ctime( &(lsdir) )); fclose(arq); closedir(dir); return 0; }
Alguém tem alguma ideia ?
GOSTEI 0