Directory Content (du)Code:void dirBrowser(char *curDir, int tab, int nA, int nI, int nS, int nT) { DIR *dir; FILE *pFile; struct dirent *de; struct stat st; char *symPath, symBuf[1024]; ssize_t len; int x=0, size=0; chdir (curDir); if (nT==1 && nI==0) for (x=0; x<tab; x++) printf("\t"); else if (nI==1) for (x=0; x<nNopt; x++) printf(" "); dir = opendir("."); while (de = readdir(dir)) { stat(de->d_name, &st); if ((len = readlink(de->d_name, symBuf, sizeof(symBuf)-1))!=-1) { chdir (symBuf); } size=0; size += st.st_size; size = size/1024; // Block Size if (nA==1 && nS==0) printf ("%d %s\n",size, de->d_name); // Print Everything if (nS==1 && nA==0) printf ("%d\n", size); if ((S_ISDIR(st.st_mode) && nA == 0)) { if ((strcmp(de->d_name, ".") != 0) && (strcmp(de->d_name, "..") != 0)) { if (nS==1 && nA==0) printf ("%d\n", size); if ((S_ISDIR(st.st_mode) && nA == 0)) { if ((strcmp(de->d_name, ".") != 0) && (strcmp(de->d_name, "..") != 0)) { if (nS==0 && nA==0) printf ("%d %s\n",size, de->d_name);// Print Directories only dirBrowser(de->d_name, tab+1, nA, nI, nS, nT); } } } closedir(dir); chdir(".."); }
Directory Content (my app)Code:4 ./dir1/dir11/dir111/dir1111 8 ./dir1/dir11/dir111 12 ./dir1/dir11 24 ./dir1 4 ./dir2 4 ./dir3/dir31 4 ./dir3/dir32/dir321 8 ./dir3/dir32 4 ./dir3/dir33 20 ./dir3 4 ./dir4 4 ./dir22 104 .
With Tree optionCode:4 dir1 4 dir11 4 dir111 4 dir1111 4 dir2 4 dir3 4 dir31 4 dir32 4 dir321 4 dir33 4 dir4 4 dir22
Code:4 dir1 4 dir11 4 dir111 4 dir1111 4 dir2 4 dir3 4 dir31 4 dir32 4 dir321 4 dir33 4 dir4 4 dir22



LinkBack URL
About LinkBacks


