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

Fermé
frum - 11 févr. 2003 à 09:50
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 11 févr. 2003 à 12:12
Comment peut-on récupérer le PATH de Linux dans un programme C et le changer svp ??
A voir également:

2 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
11 févr. 2003 à 12:12
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.
1
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);
0