1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > readlink 获取进程的绝对路径

readlink 获取进程的绝对路径

时间:2020-03-22 00:43:01

相关推荐

readlink 获取进程的绝对路径

readlink可以获取exe所在的路径(直接和进程关联);无法获得so的路径,so路径可以用dladdr,参考另一篇文章

linux系统中有个符号链接:/proc/self/exe 它代表当前程序,所以可以用readlink读取它的源路径就可以获取当前程序的绝对路径

#include <stdio.h>#include <stdlib.h>#include <unistd.h>#define MAXBUFSIZE 1024int main ( int argc, char * argv[] ){char buf[ MAXBUFSIZE ];int count;count = readlink( "/proc/self/exe", buf, MAXBUFSIZE );if ( count < 0 || count >= MAXBUFSIZE ){printf( "Failed\n" );return( EXIT_FAILURE );}/* readlink仅将软链接文件的内容拷贝到buf中,却不会追加字符串结束符,因此我们需要自己追加字符串结束符。*/buf[ count ] = '\0';printf( "/proc/self/exe -> [%s]\n", buf );return( EXIT_SUCCESS );}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。