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

frum -  
jisisv Messages postés 3678 Statut Modérateur -
Comment peut-on récupérer le PATH de Linux dans un programme C et le changer svp ??

2 réponses

  1. jisisv Messages postés 3678 Statut Modérateur 936
     
    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
  2. 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