Rechercher une page de manuel
glob
Langue: ja
Version: 1999-09-12 (openSuse - 09/10/07)
Section: 3 (Bibliothèques de fonctions)
̾Á°
glob, globfree - ¥Ñ¥¿¡¼¥ó¤Ë¥Þ¥Ã¥Á¤¹¤ë¥Ñ¥¹Ì¾¤ò¸«ÉÕ¤±¤ë¡£glob() ¤Ë¤è¤Ã ¤Æ³ÎÊݤµ¤ì¤¿¥á¥â¥êÎΰè¤ò²òÊü¤¹¤ë¡£½ñ¼°
#include <glob.h> int glob(const char *pattern, int flags,
int (*errfunc) (const char *epath, int eerrno),
glob_t *pglob);
void globfree(glob_t *pglob);
ÀâÌÀ
glob() ´Ø¿ô¤Ï¥·¥§¥ë¤¬ÍѤ¤¤Æ¤¤¤ë¥ë¡¼¥ë¡Ê glob(7) »²¾È¡Ë¤Ë´ð¤Å¤¤¤Æ¥Ñ¥¿¡¼¥ó pattern ¤Ë¥Þ¥Ã¥Á¤¹¤ë¤¹¤Ù¤Æ¤Î¥Ñ¥¹Ì¾¤ò¸¡º÷¤¹¤ë¡£ ¥Á¥ë¥À (~) ¤ÎŸ³«¤ä¥Ñ¥é¥á¡¼¥¿ÃÖ´¹¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£¤½¤ì¤é¤ò¹Ô¤¤¤¿¤¤¾ì¹ç¤Ï wordexp(3) ¤ò»È¤¦¤È¤è¤¤¡£globfree() ´Ø¿ô¤ÏÁ°¤Ë¸Æ¤Ð¤ì¤¿ glob() ¤Ë¤è¤êưŪ¤Ë³ÎÊݤµ¤ì¤¿µ²±Îΰè¤ò²òÊü¤¹¤ë¡£
glob() ¤Î·ë²Ì¤Ï pglob ¤¬¥Ý¥¤¥ó¥È¤¹¤ë¹½Â¤ÂΤËÊÖ¤µ¤ì¤ë¡£ pglob ¤Ï glob_t ·¿¤Î¹½Â¤ÂΤǤ¢¤ë¡£ glob_t ·¿¤Ï <glob.h> Æâ¤ÇÀë¸À¤µ¤ì¤Æ¤ª¤ê¡¢°Ê²¼¤ÎÍ×ÁǤò´Þ¤ó¤Ç¤¤¤ë¡£¤³¤ì¤é¤ÎÍ×ÁÇ¤Ï POSIX.2 ¤ÇÄêµÁ ¤µ¤ì¤Æ¤¤¤ë¡Ê¤µ¤é¤Ë¿¤¯¤ÎÍ×ÁǤ¬³ÈÄ¥¤È¤·¤ÆÆþ¤Ã¤Æ¤¤¤ë¤«¤â¤·¤ì¤Ê¤¤¡Ë¡£
typedef struct { size_t gl_pathc; /* º£¤Þ¤Ç¤Ë¥Þ¥Ã¥Á¤·¤¿¥Ñ¥¹¤Î¿ô */ char **gl_pathv; /* ¥Þ¥Ã¥Á¤·¤¿¥Ñ¥¹Ì¾¤Î¥ê¥¹¥È */ size_t gl_offs; /* `gl_pathv' Æâ¤Ë³ÎÊݤ¹¤ë¤¿¤á¤Î¥¹¥í¥Ã¥È */ } glob_t;
·ë²Ì¤ÏưŪ¤Ë³ÎÊݤµ¤ì¤¿µ²±Îΰè¤ËÆþ¤ì¤é¤ì¤ë¡£
¥Ñ¥é¥á¡¼¥¿ flags ¤Ë¤Ï°Ê²¼¤Î¼¨¤¹Äê¿ô¤Î¤¦¤Á¡¢»ØÄꤷ¤¿¤¤¤â¤Î¤ò¥Ó¥Ã¥È¤´¤È¤Î OR ¤ÇÍ¿¤¨¤ë¡Ê°ì¤Ä¤â »ØÄꤷ¤Ê¤¯¤Æ¤â¤è¤¤¡Ë¡£¤³¤ì¤Ë¤è¤Ã¤Æ glob() ¤ÎÆ°ºî¤òÊѹ¹¤Ç¤¤ë¡£
- GLOB_ERR
- Æɤ߼è¤ê¥¨¥é¡¼»þ¡ÊÎ㤨¤Ð¡¢¥Ç¥£¥ì¥¯¥È¥ê¤ËÆɤ߼è¤êµö²Ä°À¤¬Ìµ¤¤¾ì¹ç¤Ê¤É¡Ë ¤Ë´Ø¿ô¤«¤éÌá¤ë¡£
- GLOB_MARK
- ¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ìÃפ¹¤ë³Æ¡¹¤Î¥Ñ¥¹¤Ë¥¹¥é¥Ã¥·¥å¤òÉղ乤롣
- GLOB_NOSORT
- ÊÖ¤µ¤ì¤ë¥Ñ¥¹Ì¾¤Î¥½¡¼¥È¤ò¹Ô¤ï¤Ê¤¤¡Ê¥Ç¥Õ¥©¥ë¥È¡Ë¡£
- GLOB_DOOFFS
- ʸ»úÎó¥ê¥¹¥È pglob->pathv ¤ÎÀèƬ¤Ë pglob->gl_offs ¸Äʬ¤ÎÎΰè¤ò³ÎÊݤ¹¤ë¡£
- GLOB_NOCHECK
- ¥Þ¥Ã¥Á¤¹¤ë¥Ñ¥¿¡¼¥ó¤¬Ìµ¤±¤ì¤Ð¡¢¸µ¤Î¥Ñ¥¿¡¼¥ó¤òÊÖ¤¹¡£
- GLOB_APPEND
- Á°¤Î¸Æ¤Ó½Ð¤·¤Î·ë²Ì¤ËÄɲ乤롣ºÇ½é¤Î glob() ¤Î¸Æ¤Ó½Ð¤·¤ÎºÝ¤Ë¤Ï¤³¤Î¥Õ¥é¥°¤òÀßÄꤷ¤Æ¤Ï¤¤¤±¤Ê¤¤¡£
- GLOB_NOESCAPE
- ¥á¥¿¥¥ã¥é¥¯¥¿¤Ï¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤Ë¤è¤Ã¤Æ¥¯¥©¡¼¥È¤µ¤ì¤Ê¤¤¡£
¥Õ¥é¥°¤Ë¤Ï°Ê²¼¤Ë¼¨¤¹¤â¤Î¤â»ØÄê¤Ç¤¤ë¡£¤³¤ì¤é¤Ï POSIX.2 ¤Ç¤ÏÄêµÁ¤µ¤ì¤Æ¤¤ ¤Ê¤¤¤¬ GNU ¤Ç³ÈÄ¥¤µ¤ì¤¿¤â¤Î¤Ç¤¢¤ë¡£
- GLOB_PERIOD
- ÀèƬ¤Î¥Ô¥ê¥ª¥É¤Ï¥á¥¿¥¥ã¥é¥¯¥¿¤Ë¥Þ¥Ã¥Á¤¹¤ë¡£
- GLOB_ALTDIRFUNC
- ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¥¢¥¯¥»¥¹¤¹¤ëºÝ¤Ë¡¢Ä̾ï¤Î¥é¥¤¥Ö¥é¥ê´Ø¿ô¤ÎÂå¤ï¤ê¤Ë pglob->gl_closedir, pglob->gl_readdir, pglob->gl_opendir, pglob->gl_lstat, pglob->gl_stat ¤¬ÍѤ¤¤é¤ì¤ë¡£
- GLOB_BRACE
- csh(1) ¥¹¥¿¥¤¥ë¤Î³ç¸Ìɽ¸½ {a,b} ¤¬Å¸³«¤µ¤ì¤ë¡£
- GLOB_NOMAGIC
- ¥Ñ¥¿¡¼¥ó¤Ë¥á¥¿¥¥ã¥é¥¯¥¿¤¬´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¤½¤Î¥Ñ¥¿¡¼¥ó¤¬ÊÖ¤µ¤ì¤ë¡£
- GLOB_TILDE
- ¥Á¥ë¥À (~) ¤ÎŸ³«¤¬¹Ô¤ï¤ì¤ë¡£
- GLOB_ONLYDIR
- ¥Ç¥£¥ì¥¯¥È¥ê¤Î¤ß¤¬¥Þ¥Ã¥Á¤¹¤ë¡£
errfunc ¤¬ NULL ¤Ç¤Ê¤±¤ì¤Ð¡¢ ¥¨¥é¡¼¤¬µ¯¤³¤Ã¤¿¾ì¹ç¤Ë¤Ï´Ø¿ô errfunc ¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£´Ø¿ô¤Î°ú¿ô¤Ë¤Ï¡¢¼ºÇÔ¤·¤¿¥Ñ¥¹Ì¾ epath ¤È errno (opendir(3), readdir(3), stat(2). ¤Î¤¤¤º¤ì¤«¤Ë¤è¤Ã¤Æ¥»¥Ã¥È¤µ¤ì¤¿Ã͡ˤ¬Í¿¤¨¤é¤ì¤ë¡£ errfunc ¤¬ 0 °Ê³°¤ÎÃͤòÊÖ¤¹¤«¤â¤·¤¯¤Ï GLOB_ERR ¤¬¥»¥Ã¥È¤µ¤ì¤¿¾ì¹ç glob() ¤Ï errfunc ¤Î¸Æ¤Ó½Ð¤·¸å¤Ë½ªÎ»¤¹¤ë¡£
¸Æ¤Ó½Ð¤·¤¬À®¸ù¤·¤ÆÌá¤Ã¤¿¾ì¹ç pglob->gl_pathc ¤Ë¤Ï¥Þ¥Ã¥Á¤·¤¿¥Ñ¥¹Ì¾¤¬´Þ¤Þ¤ì¡¢ pglob->gl_pathv ¤Ï¥Þ¥Ã¥Á¤·¤¿¥Ñ¥¹Ì¾¤Î¥ê¥¹¥È¤Ø¤Î¥Ý¥¤¥ó¥¿¤È¤Ê¤ë¡£ºÇ¸å¤Î¥Ñ¥¹Ì¾¤Î¸å¤ÎºÇ½é¤Î ¥Ý¥¤¥ó¥¿¤Ï NULL ¤Ç¤¢¤ë¡£
glob() ¤ò²¿ÅÙ¤«Â³¤±¤Æ¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤¤ë¡£¤½¤ÎºÝ2²óÌܰʹߤθƤӽФ·¤Ç¤Ï GLOB_APPEND ¥Õ¥é¥°¤¬ flags ¤ËÀßÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
GNU ¤Î³ÈÄ¥¤È¤·¤Æ¡¢ pglob->gl_flags ¤Ë¤Ï»ØÄꤷ¤¿¥Õ¥é¥°¤¬¥»¥Ã¥È¤µ¤ì¤ë¡£¤â¤·°ì¤Ä¤Ç¤â¥á¥¿¥¥ã¥é¥¯¥¿¤¬¸«ÉÕ¤«¤ì¤Ð ¤³¤Î¥Õ¥é¥°¤È GLOB_MAGCHAR ¤È¤Î OR ¤ò¼è¤Ã¤¿·ë²Ì¤¬¥»¥Ã¥È¤µ¤ì¤ë¡£
ÊÖ¤êÃÍ
¸Æ¤Ó½Ð¤·¤¬À®¸ù¤·¤Æ´°Î»¤¹¤ë¤È glob() ¤Ï 0 ¤òÊÖ¤¹¡£ ¤½¤ì°Ê³°¤ÎÊÖ¤êÃͤϰʲ¼¤ÎÄ̤ê:- GLOB_NOSPACE
- ¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤¿
- GLOB_ABORTED
- Æɤ߼è¤ê¥¨¥é¡¼
- GLOB_NOMATCH
- °ì¤Ä¤â¥Þ¥Ã¥Á¤·¤Ê¤«¤Ã¤¿
½àµò
POSIX.2, POSIX.1-2001.Ãí°Õ
glibc 2.1 ¤Ç¤Ï¡¢ gl_pathc ¤È gl_offs ¤Ï POSIX.2 ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë size_t ¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤ë¡£ libc4, libc5, glibc 2.0 ¤Ç¤Ï¡¢ int ¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤ë¡£¥Ð¥°
glob() ´Ø¿ô¤Ï¤½¤ÎÃæ¤Ç¸Æ¤Ó½Ð¤·¤Æ¤¤¤ë malloc(3) ¤ä opendir(3) ¤Ê¤É¤Î´Ø¿ô¤Î¸Æ¤Ó½Ð¤·¤Ç¼ºÇÔ¤¬µ¯¤³¤ë¤È¼ºÇÔ¤¹¤ë¡£ ¤³¤ì¤Ë¤è¤ê errno ¤Ë¤½¤Î¥¨¥é¡¼¥³¡¼¥É¤¬Æþ¤ë¡£Îã
»ÈÍÑË¡¤Î°ìÎã¤ò°Ê²¼¤Ë¼¨¤¹¡£°Ê²¼¤Ï¥·¥§¥ë¤Çls -l *.c ../*.c
¤ò¥¿¥¤¥×¤·¤¿¾ì¹ç¤ò¥·¥ß¥å¥ì¡¼¥È¤·¤Æ¤¤¤ë¡£
glob_t globbuf; globbuf.gl_offs = 2; glob("*.c", GLOB_DOOFFS, NULL, &globbuf); glob("../*.c", GLOB_DOOFFS | GLOB_APPEND, NULL, &globbuf); globbuf.gl_pathv[0] = "ls"; globbuf.gl_pathv[1] = "-l"; execvp("ls", &globbuf.gl_pathv[0]);
´ØÏ¢¹àÌÜ
ls(1), sh(1), stat(2), exec(3), fnmatch(3), malloc(3), opendir(3), readdir(3), wordexp(3), glob(7)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre