Anzeige:
Ergebnis 1 bis 2 von 2

Thema: lesen von anderen shell tools

  1. #1
    Registrierter Benutzer
    Registriert seit
    11.04.2006
    Beiträge
    69

    lesen von anderen shell tools

    Ich brauch in meinem programm eine funktion die eine zeichenkette aus der pipe heraus liest.
    So dass z.B

    bash: ls | meintool

    die ausgabe von ls ausgiebt bzw weiterverabreitet....

    hab bis her folgendes, erfolglos probiert:

    int main()
    {
    int fd[2];
    int size;
    char buffer[1024];

    if (pipe(fd)==0)
    {
    size=read(fd[0], buffer, 40);
    printf("%s", buffer);
    }
    else
    {
    printf("error 1;");
    }
    }

  2. #2
    Registrierter Benutzer
    Registriert seit
    25.10.2004
    Beiträge
    819
    Eine Pipe leitet stdout von der rechten Seite in den stdin der linken Seite...

    In deinem Fall also einfach gets (oder besser fgets(stdin)) oder read(FILENO_STDIN, ....) nutzen.

    (FILENO_STDIN ist glaube ich 0)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •