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

frum -  
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   -
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   Statut Modérateur Dernière intervention   934
 
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
marvinrouge
 
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