Frage 101-84

Mit welchem Kommando können Sie die Variable FOO aus der Prozessumgebung entfernen?

  1. export -n FOO

  2. unenv FOO

  3. unset FOO

  4. FOO=

LPI-Lernziel Auf der Kommandozeile arbeiten (103.1)

FOO= (Antwort 4) leert die Variable FOO, egal ob sie in der Umgebung steht oder nicht -- nicht das, was wir hören wollen. unset FOO (Antwort 3) löscht FOO komplett; ebenfalls falsch. Ein unenv-Kommando (Antwort 2) gibt es gar nicht. Also ist Antwort 1 richtig: Mit export -n wird eine Variable aus der Prozessumgebung entfernt; sie steht aber auch danach noch als gewöhnliche Shellvariable zur Verfügung.

1 Kommentar · Kommentar hinzufügen · RSS

Testcase

dutCh (eingetragen als Rene Rudolph) · 8. Mai 2012, 15:46

592 0 ~$ export FOO=bar

593 0 ~$ echo $FOO
bar

594 0 ~$ sh -c 'echo $FOO'
bar

595 0 ~$ export -n FOO

596 0 ~$ sh -c 'echo $FOO'

597 0 ~$ echo $FOO
bar

598 0 ~$ sh -c "echo $FOO" # Zauberei ;-)
bar

599 0 ~$ set -xv

600 0 ~$ sh -c "echo $FOO"
sh -c "echo $FOO"
+ sh -c 'echo bar'
bar

601 0 ~$ sh -c 'echo $FOO'
sh -c 'echo $FOO'
+ sh -c 'echo $FOO'

602 0 ~$ export FOO
export FOO
+ export FOO

603 0 ~$ sh -c 'echo $FOO'
sh -c 'echo $FOO'
+ sh -c 'echo $FOO'
bar

604 0 ~$

Wichtig

LPI-Logo

Die LPI Academy ist keine offizielle Webseite des LPI!

Sponsor

Linup-Front-Logo

Die LPI Academy wird für die Community unterstützt von der Linup Front GmbH

A Django Site

Diese Seite

Version: 0 (Anselm)
22.8.2009 01:07:23

Benutzer

Nicht angemeldet

Kommentare

RSS