获取当前工作目录:
char *getcwd(char *buf, size_t size);
改变工作目录:
int chdir ( const char *path );
实例
#include <stdio.h>
#include <unistd.h>
#include <string.h>
int main(int argc, char const *argv[])
{
char pwd_path[1024] = {0};
memset(pwd_path, 0x00, sizeof(pwd_path));
getcwd(pwd_path, sizeof(pwd_path));
printf("1 pwd: %s\n", pwd_path);
int result = chdir("/home/mi/logfilter");
printf("result: %d\n", result);
memset(pwd_path, 0x00, sizeof(pwd_path));
getcwd(pwd_path, sizeof(pwd_path));
printf("2 pwd: %s\n", pwd_path);
return 0;
}
打印结果:
1 pwd: /home/mi/notes/gitee/BigTool/build
result: 0
2 pwd: /home/mi/logfilter
注意chdir的path只能填绝对路径,如果写~/logfilter,则result返回-1