작업 디렉토리

컴퓨터에서 작업 디렉토리()는 계층화된 파일 시스템의 디렉토리이다. 보통 현재 위치의 디렉토리를 가리키는 낱말이다. 윈도 명령 줄 해석기를 포함하여, 대부분의 도스와 유닉스 명령 셸에서는 작업 디렉토리는 cd 또는 chdir 명령어를 사용하여 바꿀 수 있다.

운영 체제에서 

대부분의 컴퓨터 파일 시스템에서 모든 디렉터리는 엔트리(일반적으로 "."라는 이름)를 가지고 있으며 이것은 디렉터리 그 자체를 지칭한다.

대부분의 도스와 유닉스 명령 셸뿐 아니라 마이크로소프트 윈도우 명령 줄 인터프리어 cmd.exe와 윈도우 파워셸의 경우 작업 디렉터리는 cd 또는 chdir 명령어를 사용하여 변경할 수 있다. 유닉스 셸에서는 pwd 명령을 입력하면 현재 작업 중인 디렉터리의 전체 경로 이름을 출력하며, 이와 동일한 도스와 윈도우의 명령은 인수 없이 cd를 입력하는 것이다. 유닉스/리눅스 셸에서의 환경 변수 PWD나 도스/윈도우 셸에서의 CD 또한 스크립트 안에서 사용하기 위해 설정되며 외부 프로그램의 실행이 불필요하다. 마이크로소프트 윈도우의 파일 바로 가기는 작업 디렉터리를 저장하는 기능이 포함되어 있다.

프로그래밍 언어에서 
대부분의 프로그래밍 언어는 운영 체제의 파일 시스템 함수들에 대한 인터페이스를 제공하며, 여기에는 프로그램의 작업 디렉터리를 설정/변경할 수 있는 기능이 포함되어 있다.

C 언어에서 POSIX 함수 chdir()은 작업 디렉터리를 변경하는 시스템 호출에 영향을 미친다. 인수는 새로운 디렉터리에 대한 경로가 포함된 문자열 자료형이며 이 이릉믄 절대 경로일 수도 있고 기존에 존재하던 경로의 상대적인 경로일 수 있다. 사용이 가능한 곳에서 작업 디렉터리를 설정하기 위한 프로세스에 의해 호출이 가능하다.

다른 언어들에도 동일한 기능이 있다. 비주얼 베이직의 경우 CHDIR()로 보통 사용된다.

윈도우 API나 POSIX C 함수와 달리 자바 프로그래밍 언어나 자바 가상 머신은 chdir()를 직접적으로 지원하지 않는다. 한동안 변경 요청이 있어왔지만 2008년까지 이 요청은 거절되었고 제한된 지원만이 도입되었다.(처음에는 java.lang.Runtime에, 나중에는 java.lang.ProcessBuilder에 영향을 줌)

같이 보기 
 홈 디렉토리
 루트 디렉토리
 부모 디렉토리

각주 

파일 시스템 디렉토리