chdir

Autres langues

Langue: ja

Version: 2004-06-23 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

chdir, fchdir - ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ÎÊѹ¹

½ñ¼°

#include <unistd.h>

int chdir(const char *path);
int fchdir(int fd);

ÀâÌÀ

chdir() ¤Ï¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ò path ¤Ë»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤ËÊѹ¹¤¹¤ë¡£

fchdir() ¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¤¬¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤È¤·¤Æ »ØÄꤵ¤ì¤ë°Ê³°¤Ï¡¢ chdir() ¤ÈƱ¤¸¤Ç¤¢¤ë¡£

ÊÖ¤êÃÍ

À®¸ù¤¹¤ë¤È¡¢0 ¤òÊÖ¤¹¡£¼ºÇÔ¤¹¤ë¤È¡¢-1 ¤òÊÖ¤·¡¢ errno ¤ËŬÀÚ¤ÊÃͤò¥»¥Ã¥È¤¹¤ë¡£

¥¨¥é¡¼

¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¤è¤Ã¤Æ¤Ï¾¤Î¥¨¥é¡¼¤¬ÊÖ¤µ¤ì¤ë»ö¤¬¤¢¤ë¡£ chdir() ¤Ç°ìÈÌŪ¤Ê¥¨¥é¡¼¤ò°Ê²¼¤Ëµó¤²¤ë:
EACCES
¥Ñ¥¹Ì¾ path ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î¤¤¤º¤ì¤«¤Ë¸¡º÷µö²Ä (search permission) ¤¬¤Ê¤¤ (path_resolution(7) ¤â»²¾È¤¹¤ë¤³¤È)¡£
EFAULT
³ä¤êÅö¤Æ¤é¤ì¤¿¥¢¥É¥ì¥¹¶õ´Ö³°¤ò path ¤¬»Ø¤·¤Æ¤¤¤ë¡£
EIO
I/O ¥¨¥é¡¼¤¬È¯À¸¤·¤¿¡£
ELOOP
path ¤ò²ò·è¤¹¤ëºÝ¤ËÁø¶ø¤·¤¿¥·¥ó¥Ü¥ê¥Ã¥¯¡¦¥ê¥ó¥¯¤¬Â¿²á¤®¤ë¡£
ENAMETOOLONG
path ¤¬Ä¹²á¤®¤ë¡£
ENOENT
¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¸ºß¤·¤Ê¤¤¡£
ENOMEM
¥«¡¼¥Í¥ë¤Ë½½Ê¬¤Ê¥á¥â¥ê¤¬¤Ê¤¤¡£
ENOTDIR
path ¤Î¹½À®Í×ÁǤ¬¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤Ê¤¤¡£

fchdir() ¤Ç°ìÈÌŪ¤Ê¥¨¥é¡¼¤ò°Ê²¼¤Ëµó¤²¤ë:

EACCES
fd ¤ò¥Ç¥£¥ì¥¯¥È¥ê¤È¤·¤Æ¥ª¡¼¥×¥ó¤¹¤ë¤¿¤á¤Î¸¡º÷µö²Ä¤¬¤Ê¤¤¡£
EBADF
fd ¤¬Å¬Àڤʥե¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤Ç¤Ê¤¤¡£

½àµò

SVr4, 4.4BSD, POSIX.1-2001.

Ãí°Õ

fork(2) ¤ÇºîÀ®¤µ¤ì¤¿»Ò¥×¥í¥»¥¹¤Ï¡¢¿Æ¥×¥í¥»¥¹¤Î¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ò ·Ñ¾µ¤¹¤ë¡£ execve(2) ¤ÎÁ°¸å¤Ç¡¢¸½ºß¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ÏÊѹ¹¤µ¤ì¤Ê¤¤¡£

fchdir() ¤Î¥×¥í¥È¥¿¥¤¥×¤¬Í­¸ú¤Ë¤Ê¤ë¤Î¤Ï¡¢ _BSD_SOURCE ¤òÄêµÁ¤·¤¿¾ì¹ç¤«¡¢ _XOPEN_SOURCE ¤òÃÍ 500 ¤ÇÄêµÁ¤·¤¿¾ì¹ç¤Î¤ß¤Ç¤¢¤ë¡£

´ØÏ¢¹àÌÜ

chroot(2), getcwd(3), path_resolution(7)