每个进程都有一个工作目录(working directory),有时称其为当前工作目录(current working directory,简称cwd)。所有相对路径名都从当前工作目录开始解释。
getcwd函数可以获取当前工作目录,chdir函数可以更改当前工作目录。
登录时,工作目录设置为起始目录(home directory),该起始目录从口令文件(通常是/etc/passwd)中的相应用户的登录项中取得。口令文件中的登录项由7个以冒号分隔的字段组成,依次是:登录名、加密口令、数字用户ID、数字组ID、注释字段、起始目录以及shell程序。
例如:
sar:x:205:105:Rago:/home/sar:/bin/ksh
getcwd函数:
头文件:unistd.h
函数原型:char *getcwd(char *buf, size_t size);
功能:getcwd()会将当前工作目录的绝对路径复制到参数buffer所指的内存空间中,参数size为buf的空间大小。
chdir函数:
头文件:unistd.h
函数原型: int chdir(const char *path);
参数:path可以是绝对目录或者相对目录
功能:改变当前工作目录
返回值:成功返回0,失败返回-1。