C,C++ & Linux
C/C++ remove(3)
KyooDong
2020. 5. 18. 16:49
728x90
remove 함수 기능
파일을 삭제하는 함수입니다.
대상 파일이 일반 파일인 경우 unlink() 와 동일하게 동작하고 디렉토리인 경우 rmdir() 과 동일하게 동작합니다.
함수 원형
#include <stdio.h>
int remove(const char *filepath);
매개변수
filepath
삭제할 파일의 경로
반환값
성공 시 0 리턴
에러 시 -1 리턴하고 errno 설정
예제
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
int main(int argc, char *argv[]) {
// argv[1] 의 링크파일 argv[2] 생성
if (link(argv[1], argv[2]) < 0) {
fprintf(stderr, "link error\n");
exit(1);
}
// 원본파일인 argv[1] 삭제
if (remove(argv[1]) < 0) {
remove(argv[2]);
fprintf(stderr, "remove error\n");
exit(1);
}
printf("%s 삭제\n", argv[1]);
exit(0);
}
결과
리눅스시스템프로그래밍 저자 : 홍지만
https://book.naver.com/bookdb/book_detail.nhn?bid=14623672
책에 기술된 예제 프로그램입니다. 책 내부에는 훨씬 더 많은 자료가 있습니다. (개인적으로 좋았습니다.)