Obtenir son propre nom de processus lors de l'exécution en C / C ++ (pour Linux)

Résumé de la façon d'obtenir votre propre nom de processus au moment de l'exécution en C, C ++

get_process_name.cpp


#include <iostream>
#include <cstdlib>
#include <errno.h>

extern char *__progname;

int main(int argc, char const* argv[])
{
        // argv[0]
        std::cout << "argv[0] : " << argv[0] << std::endl;

        // linux environment
        std::cout << "getenv(\"_\") : " << getenv("_") << std::endl;

        // libc
        std::cout << "__progname : " << __progname << std::endl;

        // errno.h
        std::cout << "program_invocation_name : " << program_invocation_name << std::endl;
        std::cout << "program_invocation_short_name : " << program_invocation_short_name << std::endl;

        return 0;
}

Exemple d'exécution


/tmp$ g++ get_process_name.cpp -o hoge && ./hoge
argv[0] : ./hoge
getenv("_") : ./hoge
__progname : hoge
program_invocation_name : ./hoge
program_invocation_short_name : hoge

/tmp$ g++ get_process_name.cpp -o hoge && $PWD/hoge
argv[0] : /tmp/hoge
getenv("_") : /tmp/hoge
__progname : hoge
program_invocation_name : /tmp/hoge
program_invocation_short_name : hoge

référence

c - How to get current process name in linux? - Stack Overflow

Recommended Posts

Obtenir son propre nom de processus lors de l'exécution en C / C ++ (pour Linux)
[Linux] [C] Obtenir le temps CPU par processus / thread
Bibliothèque de mesure du temps d'exécution dans les applications Linux C
Obtenez le nom d'hôte en Python
Lignes directrices pour se réincarner dans le monde du développement de programmation Linux (langage C / C ++)
Créez vos propres commandes Linux en Python
Implémenter une partie du processus en C ++
Windows → Linux Conseils pour importer des données
Traiter plusieurs listes avec for en Python
Obtenir les paramètres de requête pour les requêtes GET avec Django
Solution pour l'erreur d'exécution dans OpenVINO IEPlugin.load ()
Obtenez un jeton pour conoha avec python
Obtenez votre propre adresse IP en Python
Communiquez avec les périphériques I2C sous Linux C