program_invocation_name - ライブラリコールの説明 - Linux コマンド集 一覧表
名前
program_invocation_name, program_invocation_short_name - プログラムの起動に使われた名前を取得する
書式
#define _GNU_SOURCE#include <errno.h>
extern char *program_invocation_name;extern char *program_invocation_short_name;
説明
program_invocation_name
は、呼び出し元プログラムの起動に使用された名前を保持する。
内容は
main
()の
argv[0]
の値と同じだが、
program_invocation_name
の方はスコープがグローバルである点が異なる。
program_invocation_short_name
は、呼び出し元プログラムの起動に使用された名前の basename 部分を
保持する。つまり、この変数の内容は、最後のスラッシュ (/) とそれより前の
部分がある場合、
program_invocation_name
からこの部分を削除したものとなる。
これらの変数は glibc のランタイム・スタートアップ・コードで
自動的に初期化される。
備考
Linux 独自のファイル /proc/[number]/cmdline でも同様の情報を得ることができる。
準拠
これらの変数は GNU の拡張であり、 移植性が必要なプログラムでは使用すべきでない。