unsetenv

SETENV(3)                   Linux-Programmierhandbuch                  SETENV(3)



BEZEICHNUNG
       setenv - eine Umgebungsvariable ändern oder hinzufügen

ÜBERSICHT
       #include <stdlib.h>

       int setenv(const char *name, const char *wert, int ueberschreiben);
       int unsetenv(const char *name);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       setenv(), unsetenv():
           _POSIX_C_SOURCE >= 200112L
               || /* Glibc <= 2.19: */ _BSD_SOURCE

BESCHREIBUNG
       Die Funktion setenv() fügt die Variable name mit dem Wert wert zur
       Umgebung hinzu, falls name nicht bereits existiert. Wenn name in der
       Umgebung existiert, dann wird der Wert auf wert geändert, falls
       ueberschreiben nicht Null ist; wenn ueberschreiben Null ist, dann wird
       der Wert von name nicht geändert (und setenv() gibt einen Erfolgsstatus
       zurück). Diese Funktion erstellt Kopien der Zeichenketten, auf die name
       und wert zeigen (im Gegensatz zu putenv(3)).

       Die Funktion unsetenv() löscht die Variable name aus der Umgebung. Falls
       name in der Umgebung nicht existiert, dann hat die Funktion Erfolg und
       die Umgebung bleibt unverändert.

RÜCKGABEWERT
       Die Funktionen setenv() und unsetenv() geben bei Erfolg Null oder bei
       einem Fehler -1 zurück. Dann wird errno gesetzt, um den Fehler
       anzuzeigen.

FEHLER
       EINVAL name ist NULL, zeigt auf eine Zeichenkette der Länge 0 oder
              enthält ein »=«-Zeichen.

       ENOMEM Der Speicher reicht nicht aus, um eine neue Variable zur Umgebung
              hinzuzufügen.

ATTRIBUTE
       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt
       verwandten Ausdrücke.

       ┌──────────────────────────┬───────────────────────┬─────────────────────┐
       │Schnittstelle             Attribut              Wert                │
       ├──────────────────────────┼───────────────────────┼─────────────────────┤
       │setenv(), unsetenv()      │ Multithread-Fähigkeit │ MT-Unsafe const:env │
       └──────────────────────────┴───────────────────────┴─────────────────────┘

KONFORM ZU
       POSIX.1-2001, POSIX.1-2008, 4.3BSD.

ANMERKUNGEN
       POSIX.1 erfordert nicht, dass setenv() oder unsetenv() ablaufinvariant
       sind.

       Vor Glibc 2.2.2 verlangte der Prototyp von unsetenv() die Rückgabe von
       void – aktuellere Versionen folgen dem POSIX.1-2-konformen Prototyp, der
       in der ÜBERSICHT gezeigt wird.

FEHLER
       POSIX.1 spezifiziert, dass setenv() mit einem EINVAL-Fehler fehlschlagen
       sollte, wenn name ein »=«-Zeichen enthält; Versionen von Glibc vor 2.3.4
       erlaubten jedoch ein »=«-Zeichen in name.

SIEHE AUCH
       clearenv(3), getenv(3), putenv(3), environ(7)

KOLOPHON
       Diese Seite ist Teil der Veröffentlichung 5.11 des Projekts
       Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie
       Fehler gemeldet werden können sowie die aktuelle Version dieser Seite
       finden sich unter https://www.kernel.org/doc/man-pages/.


ÜBERSETZUNG
       Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother
       <krd@gulu.net> und Chris Leick <c.leick@vollbio.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General
       Public License Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder
       neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
       Sie bitte eine E-Mail an die Mailingliste der Übersetzer ⟨debian-l10n-
       german@lists.debian.org⟩.



GNU                               22. März 2021                        SETENV(3)