有时候需要从程序运行目录中获取配置文件,此时就是读取程序目录.在daemon(0,0)运行后,一般会将当前目录改为/。所以就要通过其它方法来获取程序路径。
int rslt = readlink("/proc/self/exe", szPath, sizeof(szPath) - 1);
if (rslt < 0 || (rslt >= sizeof(szPath) - 1)) {
return ;
}
szPath[rslt] = '\0';
for (i = rslt; i >= 0; i--) {
if (szPath[i] == '/') {
szPath[i + 1] = '\0';
break;
}
}