Rechercher : dans
Par :

Récupérer et changer le PATH Linux en C

Dernière réponse le 11 fév 2003 à 12:12:17 frum, le 11 fév 2003 à 09:50:04 
 Signaler ce message aux modérateurs

Comment peut-on récupérer le PATH de Linux dans un programme C et le changer svp ??

Meilleures réponses pour « récupérer et changer le PATH Linux en C » dans :
[Bash] La variable d'environnement PATH VoirLa variable d'environnement PATH I. Préambule II. C'est quoi le shell ? III. Définition IV. Séance de dissection V. Ajouter un répertoire à la variable PATH VI. Et puis... I. Préambule Sous les systèmes GNU/Linux qu'on le veuille ou...
Compiler du C sous Linux/UNIX VoirSous Linux, le compilateur de C est gcc. Il est installé de base sur plusieurs distributions, mais sur Debian (et celles qui en découlent) il faudra l'installer (aptitude install gcc). gcc Syntaxe de GCC gcc Tout d'abord, il faut savoir...
Télécharger le contenu d'une page WEB distante VoirIntroduction Installation sous Linux (Ubuntu / Debian) Installation sous Windows Dev C++ Microsoft Visual C++ Petite exploration des fonctions de libcurl Un exemple: télécharger la page d'accueil de CCM Notre fichier source Compilation...

1

marvinrouge, le 11 fév 2003 à 09:57:11

Methodes getenv et setenv (si elles existent sous linux)

sinon en 'plus crade'

char[command];

sprintf(command, "set PATH=%", "./src); // par exemple
sprintf(command, "ECHO $PATH"); // par exemple

ci-dessus syntaxe TRES approximative (g pas fait de unix/linux depuis 5 ans ...)

system(command);

Répondre à marvinrouge

2

 jisisv, le 11 fév 2003 à 12:12:17

Encore des appels system.
Pourquoi faire du C alors?

#include <stdlib.h>
#include <stdio.h>
#include <strings.h>
#define MAX 256

int main(void)
{
char buffer[MAX];
strncpy(buffer, getenv("PATH"), MAX);
printf("Before: %s\n", getenv("PATH"));
strcat(buffer, ":/mypath");
// printf("%s\n", buffer);
setenv("PATH", buffer, 1);
printf("After: %s\n", getenv("PATH"));
exit( EXIT_SUCCESS );
}

Johan

The software said "Requires Windows98, Win2000, or better,
So I installed Unix.

Répondre à jisisv
Collection CommentÇaMarche.net