Provided by: manpages-de-dev_0.5-4.1ubuntu1_all bug

BEZEICHNUNG

       system - führe ein Shellkommando aus

ÜBERSICHT

       #include <stdlib.h>

       int system (const char * string);

BESCHREIBUNG

       system()  führt  ein  Kommando,  das  in string spezifiziert ist, durch
       Aufruf von /bin/sh -c string aus und kehrt  zurück  wenn  das  Kommando
       beendet  ist.   Während  der  Ausführung  des  Kommandos  wird  SIGCHLD
       blockiert und SIGINT und SIGQUIT werden ignoriert.

RÜCKGABEWERT

       Der zurückgegebene Wert ist 127 wenn der Aufruf  execve()  für  /bin/sh
       fehlschlägt,   -1   wenn  ein  anderer  Fehler  aufgetreten  ist,  oder
       anderenfalls der Rückgebewert des Kommandos.

       Wenn der Wert von string NULL ist, so gibt  system()  Nichtnull  zurück
       wenn die Shell verfügbar ist, Null wenn nicht.

       system() beeinflusst nicht den Wartestatus anderer Kindprozesse.

KONFORM ZU

       ANSI C, POSIX.1, proposed POSIX.2, BSD 4.3

BUGS

       Benutze  nicht  system()  von  einem  Programm  mit  suid-  oder  sgid-
       Privilegien aus, da  unbekannte  Werte  für  einige  Umgebungsvariablen
       benutzt  werden  könnten,  die  die  Systemintegrität angreifen können.
       Benutze  stattdessen  die  Funktionsfamilie   exec(2),   jedoch   nicht
       execlp(2) oder execvp(2).

       Die   Prüfung   der  Verfügbarkeit  von  /bin/sh  wird  nicht  wirklich
       durchgeführt; die Shell wird immer als verfügbar angenommen.

       Es ist möglich, dass das Shellkommando den Wert  127  zurückgibt,  d.h.
       dass  dieser Wert kein eindeutiger Indikator dafür ist, dass der Aufruf
       von execve() fehlgeschlagen ist; prüfe errno zur Sicherheit.

SIEHE AUCH

       sh(1), exec(2), signal(2).