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

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

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    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);