#include <stdio.h> #include <stdlib.h> #include <fcntl.h> // mkdir -p path int open_file_with_dirs(const char *fn) { char tmp[1024]; int i = 0; while(*fn) { tmp[i] = *fn; if(*fn == '/' && i) { tmp[i] = '\0'; if(access(tmp, F_OK) != 0) { if(mkdir(tmp, 0755) == -1) { return -1; } } tmp[i] = '/'; } i++; fn++; } tmp[i] = '\0'; return 0; } int main (void) { open_file_with_dirs("/home/abcdef/aaa/"); return 0; }
結果:
建立 /home/abcdef/aaa/
ref:
Here
沒有留言:
張貼留言