RENAME
Section: Linux Programmer's Manual
 (2)
Updated: 4 June 1998
Index
Return to Main Contents
 
À̸§
rename - ÆÄÀÏÀÇ À̸§À̳ª À§Ä¡¸¦ º¯°æ 
 
»ç¿ë¹ý
#include <stdio.h>
int rename(const char *oldpath, const char *newpath);
 
¼³¸í
rename
Àº ÆÄÀÏÀÇ À̸§À» ¹Ù²Ù°Å³ª, ÇÊ¿äÇÏ´Ù¸é, µð·ºÅ丮°£¿¡ ÆÄÀÏÀ» À̵¿½ÃŲ´Ù.  
±âŸ ÆÄÀÏ¿¡ Çϵ帵ũµÈ ÆÄÀϵé(.BR link (2))¸¦ »ç¿ëÇØ¼ ¸¸µé¾îÁø °Í)Àº ¿µÇâÀ» ¹ÞÁö ¾Ê´Â´Ù. 
¸¸ÀÏ 
newpath
already exists it will be atomically replaced (subject to
a few conditions - see ERRORS below), so that there is
no point at which another process attempting to access
newpath
will find it missing.
°¡ ÀÌ¹Ì Á¸ÀçÇÑ´Ù¸é, newpath´Â ÀÚµ¿ÀûÀ¸·Î ´ëüµÉ °ÍÀÌ´Ù. µû¶ó¼ .I newpath¿¡ Á¢±ÙÇϰíÀÚ 
ÇÏ´Â ´Ù¸¥ ÇÁ·Î¼¼½º´Â ±× °ÍÀÌ ¾ø¾îÁ³´Ù´Â °ÍÀ» ¹ß°ßÇÒ Á¡ÀÌ ¾ø´Ù.        
¸¸ÀÏ .I newpath°¡ Á¸ÀçÇϰí, ¿¬»êÀÌ ¸î°¡Áö ÀÌÀ¯¶§¹®¿¡ ½ÇÆÐÇÑ´Ù¸é, 
renameÀº .I newpathÀÇ ¿¹¸¦ ÀûÀýÇÑ °÷¿¡ ³²°ÜµÑ °ÍÀ» º¸ÁõÇÑ´Ù. 
±×·¯³ª, °ãÃľ²±âÇÒ¶§,  
oldpath°ú
newpath ¸ðµÎ ÆÄÀÏÀÇ À̸§ÀÌ ¹Ù²î¾úÀ½À» °¡¸®Å°´Â âÀÌ ÀÖÀ» °ÍÀÌ´Ù. 
¸¸ÀÏ .I oldpath°¡ ½Éº¼¸¯ ¸µÅ©µÇ¾î ÀÖÀ¸¸é, ¸µÅ©ÀÇ À̸§Àº ¹Ù²ï´Ù. ¸¸ÀÏ .I newpath°¡ 
½Éº¼¸¯ ¸µÅ©µÇ¾î ÀÖÀ¸¸é, ¸µÅ©´Â °ãÃľ²±â µÈ´Ù. 
 
¹Ýȯ°ª
¼º°øÇϸé, zero°¡ ¸®Åϵǰí, ¿¡·¯°¡ ¹ß»ýÇϸé, -1°¡ ¸®ÅϵǸç, 
errno°¡ ÀûÀýÇÏ°Ô ¼³Á¤µÈ´Ù. 
 
¿¡·¯
- EISDIR
- 
newpath´Â
±âÁ¸ µð·ºÅ丮ÀÌÁö¸¸, 
oldpath´Â 
µð·ºÅ丮°¡ ¾Æ´Ï´Ù. 
- EXDEV
- 
oldpath¿Ínewpath
´Â µ¿ÀÏÇÑ ÆÄÀϽýºÅÛ »ó¿¡ ÀÖÁö ¾Ê´Â´Ù. 
- ENOTEMPTY or EEXIST
- 
newpath
´Â ºó µð·ºÅ丮°¡ ¾Æ´Ï´Ù. ¿¹¸¦ µé¾î .¿Í .. ÀÌ»óÀÇ ³»¿ëµéÀ» °®°í ÀÖ´Ù. 
- EBUSY
- 
oldpath¶Ç´Ânewpath°¡ÀϺÎÇÁ·Î¼¼½º(ÇöÇàÀÛ¾÷µð·ºÅ丮,·çÆ®µð·ºÅ丮,¶Ç´ÂÀб⸦
À§ÇØ ¿¸° °æ¿ì·Î¼)¿¡ ÀÇÇØ »ç¿ëµÇ´Â µð·ºÅ丮À̰ųª, ½Ã½ºÅÛ(¸¶¿îÆ® Æ÷ÀÎÆ®)¿¡ ÀÇÇØ 
»ç¿ëµÇ´Â µð·ºÅ丮À̱⠶§¹®¿¡, renameÀº ½ÇÆÐÇÑ´Ù. ¹Ý¸é¿¡ ½Ã½ºÅÛÀº À̸¦ ¿¡·¯·Î °£ÁÖÇÑ´Ù.
(ÀÌ·± °æ¿ì EBUSY¸¦ ¸®ÅÏÇÒ Çʿ䰡 ¾ø´Ù´Â °ÍÀ» Âü°íÇ϶ó. renameÀ» ½ÇÇàÇϴµ¥ ÀÖ¾î
À߸øµÈ Á¡Àº Çϳªµµ ¾ø´Ù. ÇÏÁö¸¸, ¸¸ÀÏ ½Ã½ºÅÛÀÌ ÀÌ·¯ÇÑ »óȲµéÀ» Á¦¾îÇÏÁö ¸øÇÑ´Ù¸é, 
EBUSYÀÇ ¸®ÅÏÀÌ Çã¿ëµÈ´Ù.)
- EINVAL
- 
»õ·Î¿î °æ·Î¸íÀº °æ·Î ¿À·¡µÈ °æ·Î¸íÀÇ Á¢µÎ»ç¸¦ Æ÷ÇÔÇϰųª, ±× ÀÚüÀÇ µð·ºÅ丮¸¦ ±× ÀÚüÀÇ
ÇÏÀ§ µð·ºÅ丮·Î ¸¸µé·Á´Â ½Ãµµ°¡ ÀÌ·ç¾îÁø´Ù. 
- EMLINK
- 
oldpath
´Â ÀÌ¹Ì ÃÖ´ë ±×¿¡ ´ëÇÑ ÃÖ´ë ¼ýÀÚÀÇ ¸µÅ©µéÀ» °®°í Àְųª, 
newpath¸¦ Æ÷ÇÔÇÏ´Â µð·ºÅ丮´Â ÃÖ´ë ¼ýÀÚÀÇ ¸µÅ©µéÀ» °®°í ÀÖ´Ù. 
- ENOTDIR
- 
oldpath¶Ç´Ânewpath¿¡¼µð·º·Î¸®·Î¼»ç¿ëµÇ´Â±¸¼º¿ä¼Ò´Â»ç½Ç»óµð·ºÅ丮°¡¾Æ´Ï´Ù.
Or,
oldpath
´Â µð·ºÅ丮À̰í, 
newpath
´Â Á¸ÀçÇÏÁö¸¸, µð·ºÅ丮°¡ ¾Æ´Ï´Ù. 
- EFAULT
- 
oldpath¶Ç´Ânewpath´Â¿©·¯ºÐÀǾ׼¼½º°¡°¡´ÉÇÑÁÖ¼Ò°ø°£ÀǹÛÀ»°¡¸®Å²´Ù.
- EACCES
- 
oldpath¶Ç´Ânewpath¸¦Æ÷ÇÔÇϴµð·ºÅ丮¿¡´ëÇѾ²±âÁ¢±ÙÀºÇÁ·Î¼¼½ºÀÇ
À¯È¿ UID¿¡ ´ëÇØ Çã¿ëµÇÁö ¾Ê°Å³ª, .IR oldpath ¶Ç´Â newpath³»ÀÇ µð·ºÅ丮µéÁß Çϳª°¡ 
°Ë»ö(½ÇÇà) ±ÇÇÑÀ» Çã¿ëÇÏÁö ¾Ê°Å³ª, .I oldpath°¡ µð·ºÅ丮ÀÌ¸é¼ ¾²±â ±ÇÇÑ(.B .. Ç׸ñÀ»
¾÷µ¥ÀÌÆ®ÇÒ Çʿ䰡 ÀÖ´Ù)À» Çã¿ëÇÏÁö ¾Ê´Â´Ù. 
- EPERM¶Ç´ÂEACCES
- 
oldpath¸¦ Æ÷ÇÔÇÏ´Â µð·ºÅ丮´Â ½ºÆ¼Å° ºñÆ®¸¦ ¼³Á¤µÇµµ·Ï Çϰí, ÇÁ·Î¼¼½ºÀÇ À¯È¿ UID´Â
·çÆ®ÀÇ UIDµµ, »èÁ¦µÉ ÆÄÀÏÀÇ UIDµµ, À̸¦ Æ÷ÇÔÇÏ´Â µð·ºÅ丮ÀÇ UIDµµ ¾Æ´Ï°Å³ª, 
newpath´Â Á¸ÀçÇÏ´Â ÆÄÀÏÀÌ´Ù. ±×¸®°í À̸¦ Æ÷ÇÔÇÏ´Â µð·ºÅ丮´Â ½ºÆ¼Å° ºñÆ®°¡ ¼³Á¤µÇ
µµ·ÏÇϰí, ÇÁ·Î¼¼½ºÀÇ À¯È¿ UID´Â ·çÆ®ÀÇ UIDµµ, ´ëüµÉ ÆÄÀÏÀÇ UIDµµ, À̸¦ Æ÷ÇÔÇÏ´Â 
µð·ºÅ丮ÀÇ UIDµµ ¾Æ´Ï´Ù. ¶Ç´Â .IR pathname¸¦ Æ÷ÇÔÇÏ´Â ÆÄÀϽýºÅÛÀº ¿äûµÈ ŸÀÔÀÇ 
À̸§¹Ù²Ù±â(rename)¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù.  
- ENAMETOOLONG
- 
oldpath¶Ç´Ânewpath°¡³Ê¹«±æ´Ù.
- ENOENT
- 
oldpath ¶Ç´Â newpath³»ÀÇ µð·ºÅ丮 ±¸¼º¿ä¼Ò°¡ Á¸ÀçÇÏÁö ¾Ê°Å³ª, ½Éº¼¸¯ ¸µÅ©ÀÌ´Ù. 
- ENOMEM
- 
»ç¿ëÇÒ ¼ö ÀÖ´Â Ä¿³Î ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê´Ù.  
- EROFS
- 
ÆÄÀÏÀº ¿ÀÁ÷ ÀбⰡ °¡´ÉÇÑ ÆÄÀϽýºÅÛ»ó¿¡ ÀÖ´Ù. 
- ELOOP
- 
oldpath¶Ç´ÂnewpathÀ»°áÁ¤Çϴµ¥ÀÖ¾î,³Ê¹«³ª¸¹Àº½Éº¼¸¯¸µÅ©µé°ú¸¶ÁÖÄ¡°ÔµÈ´Ù.
- ENOSPC
- 
ÆÄÀÏÀ» Æ÷ÇÔÇÏ´Â ÀåÄ¡´Â »õ·Î¿î µð·ºÅ丮 Ç׸ñ¿¡ ´ëÇÑ ¿©À¯°¡ ¾ø´Ù.
ȣȯ
POSIX, 4.3BSD, ANSI C
 
¹ö±×
NFS ÆÄÀϽýºÅÛ¿¡¼, ¿©·¯ºÐÀº ¿¬»êÀÌ ½ÇÆÐÇϸé, ÆÄÀÏÀÇ À̸§¹Ù²Ù±â°¡ ¾ÈµÈ´Ù´Â °¡Á¤À» 
ÇØ¼´Â ¾ÈµÈ´Ù. ¸¸ÀÏ ¼¹ö°¡ ¿¬»êÀ» renameÇϰí, ºØ±«µÇ¸é, ¼¹ö°¡ ´Ù½Ã µÇ»ì¾Æ³
ÀÌÈÄ¿¡ ó¸®µÉ ´Ù½Ã Àü¼ÛµÈ RPC´Â ½ÇÆÐÇÏ°Ô µÈ´Ù. ¾îÇø®ÄÉÀ̼ÇÀº À̸¦ ´Ù·çµµ·Ï µÇ¾î ÀÖ´Ù. 
ÀÌ¿Í ºñ½ÁÇÑ ¹®Á¦¿¡ ´ëÇØ¼´Â .BR linux(2)¸¦ ÂüÁ¶Ç϶ó. 
 
°ü·Ã Ç׸ñ
link(2),
unlink(2),
symlink(2),
mv(1)
 
¿ªÀÚ
ASPLINUX<man@asp-linux.co.kr>, 2000³â 7¿ù 26
 Index
- À̸§
- 
- »ç¿ë¹ý
- 
- ¼³¸í
- 
- ¹Ýȯ°ª
- 
- ¿¡·¯
- 
- ȣȯ
- 
- ¹ö±×
- 
- °ü·Ã Ç׸ñ
- 
- ¿ªÀÚ
- 
This document was created by
man2html,
using the manual pages.
Time: 08:06:58 GMT, March 25, 2004