Provided by:
manpages-de-dev_0.5-4.1ubuntu1_all 
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).