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
  プロジェクトのリリース
  3.65 の一部
  である。プロジェクトの説明とバグ報告に関する情報は
  
http://www.kernel.org/doc/man-pages/
  に書かれている。