C перейдите в указанный каталог и найдите только простые файлы, остановитесь на первом файле и сделайте что-нибудь
Я хочу использовать nftw() и быть только на первом уровне. Но это все равно идет глубже, даже если я укажу FTW_MOUNT. Затем я хочу проверить, являются ли файлы простым файлом, и что-то с ним сделать. Вот что я пробовал:
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <ftw.h>
int ftwinfo(const char *p, const struct stat *st, int fl, struct FTW *fbuf);
int ftwinfo(const char *p, const struct stat *st, int fl, struct FTW *fbuf){
static int cnt = 0;
puts( p );
cnt++;
if( cnt >= 10 ) return cnt;
return 0;
}
int main(int argc,char* argv[]){
int rv;
int flags = FTW_MOUNT;
rv = nftw( ".", ftwinfo, 20, flags );
if( rv == -1 ){
perror( "nftw failed" );
exit( 1 );
}
if( rv != 0 ){
printf( "ntfw fn function returnd %d != 0 -> nftw finished\n", rv );
}
return 0;
}