Eustáquio Rangel

Desenvolvedor, pai, metalhead, ciclista

Enferrujado

Publicado em Developer


Nossa, realmente estou bem enferrujado em relação à programação em C. Também, pudera, eu mexia mais com isso quando fuçava no DOS e no Windows (que é um saco com aquela API com nomesmuitoextensosqueaoinvésdeajudarembananavamaisainda()).
Hoje tive que mexer em um programinha C que fiz alguns anos atrás, e sorte que ele segue o padrão POSIX (é, eu já me preocupava com alguns padrões mesmo nessa época), compilou perfeitamente (tá certo vai, tive que dar um include no unistd.h dentro de um #ifdef), mas me deparei com uma coisa que eu não sabia: sistemas UNIX e derivados não tem data de criação de arquivos.
O programa, que rodava em Windows, usava a data de criação de um certo diretório para fazer umas checagens. Descobri que no UNIX temos a data do último acesso, data de modificação dos dados e a data de mudança de status. Já mudei o jeito que o programa funciona, mas se vocês ficaram curiosos, tem uns links aqui:

Descrição da stat.h, estrutura carregada pela função stat(), onde constam st_atime, st_mtime e st_ctime, as datas retornadas pelo sistema.
Alguns comentários sobre essas datas na seção 4.7 File Times Update;
A man page da stat;
E dois sujeitos discutindo sobre isso;


Comentários

Comentários fechados.

Sem nenhum comentário.

Artigos anteriores