본문 바로가기

Computer Science/C 언어

[C언어] 작업 디렉터리(폴더) 변경 함수 (chdir)

작업 디렉터리 변경을 위해, chdir 함수에 대해 알아보자. 

chdir 은 change working directory의 줄임말로 흔히 Terminal에서 cd 명령을 통해 디렉터리를 변경할 때의 동작과 동일하다. 

chdir() 함수는 현재 프로세스의 작업 디렉토리에만 영향을 미치며, 아래와 같이 사용된다. 

#include <unistd.h>
...
char *directory = "/tmp";
int ret;

ret = chdir (directory);

위 코드에서도 알 수 있다시피, C언어에서 chdir() 함수를 사용하기 위해서는 #include<unistd.h> 헤더를 추가해줘야 한다. 

이후, 이동하고자 하는 디렉터리를 인자로 넘겨줌으로써 chdir() 함수를 호출할 수 있다. 

 

함수 호출 시, 디렉토리 이동에 성공하게 되면 0을 반환하게 된다. 

아래 코드는 디렉터리(폴더) 이동 후 현재 작업 디렉터리(폴더)를 출력해 주는 예제이다.  

 

 

 

참고 자료 

https://man7.org/linux/man-pages/man2/chdir.2.html

 

chdir(2) - Linux manual page

chdir(2) — Linux manual page CHDIR(2) Linux Programmer's Manual CHDIR(2) NAME         top chdir, fchdir - change working directory SYNOPSIS         top #include int chdir(const char *path); int fchdir(int fd); Feature Test Macro Requirements for

man7.org