C함수 링크 생성하기 link()
링크를 생성합니다. link()는 파일에 대해서만 새 이름을 생성하며, 생성된 이름으로 같은 파일을 사용할 수 있습니다. 즉, 리눅스에서는 하나의 파일에 여러 이름을 지정할 수 있으며, 생성된 이름 어느 것으로 파일 내용을 수정하면 다른 이름으로 열어 보아도 수정된 내용으로 볼 수 있습니다.
- 헤더: unistd.h
- 형태: int link( const char *oldpath, const char *newpath)
- 인수: char *oldpath 존재하는 파일 이름
char *newpath 만들고자하는 링크 이름 - 반환: int 0 == 성공, -1 == 실패
C언어 link() 함수 예제
#include <stdio.h>
#include <unistd.h>
int main()
{
if ( -1 == link( "test.c", "sample.c"))
printf( "링크 생성 실패\n");
}
C언어 link() 예제 실행 결과
]$ ./a.out
]$ ls
a.out sample.c test test.c
]$
마치 test.c를 sample.c로 복사된듯 보입니다만, test.c를 수정하신 후 sample.c를 보시면 같은 파일임을 알 수 있습니다.
'컴퓨터 > 프로그래밍' 카테고리의 다른 글
C언어 링크 삭제 함수 unlink() (0) | 2020.03.15 |
---|---|
C언어 디렉토리 읽기 위치를 처음으로 돌리기 함수 rewinddir() (0) | 2020.03.15 |
C언어 디렉토리 안에 있는 항목 구하기 함수 readdir() (0) | 2020.03.15 |