[linux] readdir

Stefan Ondrejicka ondrej na idata.sk
Pondělí Září 20 15:04:03 CEST 1999


On Mon, 20 Sep 1999, Robo Pavelka wrote:

Ahoj,

> Prosim o pomoc.
> Neviem nacitat obsah adresara pomocou funkcie readdir.
> Moze poslat niekto neaky priklad ? Ten pokec v man3 je hrozny.

#include <sys/types.h>
#include <dirent.h>

int main(argc , argv)
int argc;
char **argv;
{
	DIR *dir;
	struct dirent *dent;

	dir = opendir("/etc");

	while((dent = readdir(dir)))
	{
		printf("%s\n" , dent->d_name);
	}

	closedir(dir);
}

struct dirent
  {
    __ino_t d_ino;		/* inode number                */
    __off_t d_off;		/* neviem iste ale myslim, ze  */
				/* to ofset v diskovej realnej */
				/* reprezentacii adresara      */ 
				/* (aj  adresar je subor)      */
    unsigned short int d_reclen;/* velkost zaznamu	       */
    unsigned char d_type;	/* typ suboru, ktoremu patry zaznam */
				/* DT_FIFO - fifo , 
				   DT_CHR - znkovy device, 
				   DT_DIR - adresar, 
				   DT_BLK - blokovy device,
				   DT_REG - normalny subor,
				   DT_LNK - symbolicky link,
				   DT_SOCK - unix socket
				*/
    char d_name[256];		/* snad jasne :-) */
  };

Cau,
Stevo.

---
Stefan Ondrejicka <ondrej na idata.sk>
Beethovenova 11, 917 08 Trnava, Slovakia
http://www.idata.sk/~ondrej/




Další informace o konferenci linux