您的位置:首页 > 运维架构 > Linux

Linux 下当前可执行文件如何获取自身文件名与全路径<转>

2013-08-20 17:32 731 查看
shell里面用$0咱就不说了,下面是看到的另外一种获取文件名的方法,果断的转之~~

1. 当前程序运行的时候,你可以去读取/proc/self/exe,这个文件就是当前进程的可执行文件的一个连接;

2. readlink函数可以把连接的名字转成实际文件名;

代码如下:

#include <stdio.h>

void main( void )

{

char
sysfile[15] = "/proc/self/exe";

int namelen
= 256;

char
selfname[256];

memset(
selfname, 0, 256 );

if
( -1 != readlink( sysfile,

selfname,

namelen)
)

{

printf(
" self name = %s\n",

selfname
);

}

}

结果如下:

wzhnsc@wzhnsc-Ubuntu:/media/TestSrc$ ./getselfname

self name = /media/TestSrc/getselfname
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: