Quero escrever um programa que verifique a existência de um diretório; se esse diretório não existir, ele criará o diretório e um arquivo de log dentro dele, mas se o diretório já existir, ele apenas criará um novo arquivo de log nessa pasta.
Como eu faria isso em C com Linux?
Respostas:
Procure
stat
verificar se o diretório existe,E
mkdir
, para criar um diretório.Você pode ver o manual dessas funções com os comandos
man 2 stat
eman 2 mkdir
.fonte
mkdir
no Linux precisa de um segundo parâmetro,mode
além depath
.Você pode usar mkdir:
$ man 2 mkdir
fonte
porque esta é uma pergunta muito comum, aqui está o código para criar vários níveis de diretórios e então chamar fopen. Estou usando uma extensão GNU para imprimir a mensagem de erro com printf.
fonte