名前

program_invocation_name, program_invocation_short_name - プログラムの起動に使われた名前を取得する

書式

#define _GNU_SOURCE         /* feature_test_macros(7) 参照 */
#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 のランタイムスタートアップコードで 自動的に初期化される。

準拠

これらの変数は GNU の拡張であり、 移植性が必要なプログラムでは使用すべきでない。

注意

Linux 独自のファイル /proc/[number]/cmdline でも同様の情報を得ることができる。

関連項目

proc(5)

この文書について

この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。

Recommended readings

Pages related to program_invocation_name you should read also:

Questions & Answers

Helpful answers and articles about program_invocation_name you may found on these sites:
Stack Overflow Server Fault Super User Unix & Linux Ask Ubuntu Network Engineering DevOps Raspberry Pi Webmasters Google Search