[C][linux] Connaitre le répertoire contenant l'éxecutable

Connaitre le répertoire contenant l'éxecutable [C][linux] - C++ - Programmation

Marsh Posté le 10-02-2003 à 22:16:10    

Afin d'optimiser mon utilisation de scandir, j'aimerais pouvoir récupérer le répertoire contenant l'exécutable. En récupérant arg0 ca ne marche pas car le programme peut avoir été lancé avec un chemin absolu, relatif, ou sans chemin du tout (répertoire dans le PATH). Une idée ?
:??:  :??:  :??:

Reply

Marsh Posté le 10-02-2003 à 22:16:10   

Reply

Marsh Posté le 10-02-2003 à 22:36:17    

comment ça optimiser ton scandir?
 
man 3 getcwd

Reply

Marsh Posté le 11-02-2003 à 02:09:44    

Merci pour ta réponse, mais getcwd ne convient pas. Sauf erreur de ma part cette fonction permet de connaitre le répertoire de travail courant, mais pas le répertoire de l'application.
 
Pour l'exemple, prenons le programme repapp qui est dans /usr/bin et qui affiche le répertoire de l'application :

/home/toto$ /usr/bin/repapp
/usr/bin
/home/toto$ repapp
/usr/bin
/home/toto$ cd /usr/bin
/usr/bin$ ./repapp
/usr/bin
/usr/bin$


 
Ce que je voudrais faire, c'est scanner un certain nombre de fichiers situés dans le même répertoire que mon éxecutable, quelque soit l'endroit d'où je lance le programme. C'est ce que je veux dire par optimiser mon utilisation de scandir.
 
J'espère avoir été plus clair cette fois.


Message édité par oibaF2001 le 11-02-2003 à 02:10:49
Reply

Marsh Posté le 11-02-2003 à 06:47:58    

ah ok.....
 
man 3 realpath

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed