技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁 > 教程 > 服務(wù)器類 >

linux c 獲得當(dāng)前進(jìn)程的進(jìn)程名和執(zhí)行路徑

來源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2019-01-15 18:00┆點(diǎn)擊:


[sam@hzhsan test]$ more test_processname.cpp
#include <limits.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>

size_t get_executable_path( char* processdir,char* processname, size_t len)
{
        char* path_end;
        if(readlink("/proc/self/exe", processdir,len) <=0)
                return -1;
        path_end = strrchr(processdir,  'http://www.3lian.com/');
        if(path_end == NULL)
                return -1;
        ++path_end;
        strcpy(processname, path_end);
        *path_end = '';
        return (size_t)(path_end - processdir);
}
int main()
{
        char path[PATH_MAX];
        char processname[1024];
        get_executable_path(path, processname, sizeof(path));
        printf("directory:%snprocessname:%sn",path,processname);
}
[sam@hzhsan test]$