PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Startkommando herausfinden?



7.e.Q
03-02-2005, 13:15
Hallo,

wie kann ich unter Linux 2.6.7 mit C/C++ innerhalb eines von mir entwickelten Prozesses die aktuelle Prozess-ID, bzw. das Aufrufkommando ermitteln?

Danke

Gruß,
Hendrik

Boron
03-02-2005, 13:50
int main(int argc, char* argv[]) { ... }In argc steht die Anzahl aller Argumente für das Programm.
In dem Array mit Strings argv stehen alle Argumente.

Bst: deinProg -c datei
argc == 3
argv[0] == /pfad/zu/deinProg
argv[1] == -c
argv[2] == datei

argv[0] ist immer der Programmaufruf selbst mit absoluten Pfad zur ausführbaren Datei.

Wie du die PID des laufenden Programms rausfindest weiß ich nicht :(.

Smjert
03-02-2005, 13:59
Du kannst mit getpid(), die PID des Prozesses auslesen.
Für genaueres man getpid.

Hier noch eine etwas doofe Anwendung der Funktion. :)
Das Prog macht nichts anderes als seine PID auslesen.


#include <stdio.h>
#include <unistd.h>

int main()
{
printf("%u\n",getpid());

}


Gruss
Smjert