Anzeige:
Ergebnis 1 bis 9 von 9

Thema: export VARIABLE in Shell <> export VARIABLE in Skript????

  1. #1
    Registrierter Benutzer Avatar von ThorstenHirsch
    Registriert seit
    Nov 2002
    Beiträge
    6.556

    export VARIABLE in Shell <> export VARIABLE in Skript????

    Servus!

    Kann mir das hier einer erklären?
    Ich versuche hier den FSAA mode meiner nVidia-Karte zu setzen, was auch funktioniert - allerdings nur in der Shell:
    Code:
    export __GL_FSAA_MODE=2
    Mit
    Code:
    echo $__GL_FSAA_MODE
    bekomm ich dann meine '2' ausgegeben.

    Aber wenn ich das ganze in eine ausführbare Datei schreibe und diese aufrufe, funktioniert das nicht!!!
    Wie kann denn das sein?????

    Thorsten


    P.S.: Natürlich hab ich in der ausführbaren Datei die Variable nicht auf 2 sondern auf 0, 1, 3, 4 oder 5 gesetzt, damit ich nen Unterschied sehe, falls es klappen würde. Übrigens tritt das Problem nicht nur bei meinem User sondern auch bei root auf....ach ja, und dann wird da noch beim booten die Datei /etc/rc.boot/set_fsaa aufgerufen, in der die Variable eigentlich auch schon gesetzt sein sollte - ist sie aber leider nicht, obwohl die Datei 100%ig aufgerufen wird!
    ¡Nuestro amigo... el Computador!

  2. #2
    Registrierter Benutzer Avatar von dauni
    Registriert seit
    Jan 2001
    Ort
    Meran
    Beiträge
    2.261
    wie sieht denn deine ausführbare datei aus?

    edit:
    Code:
    [daniel@athlon log]$ cat > blah
    #!/bin/bash
    export hollawind=dniwadlloh
    echo $hollawind
    [daniel@athlon log]$ chmod +x blah
    [daniel@athlon log]$ ./blah
    dniwadlloh
    [daniel@athlon log]$
    Sollte eigentlich klappen
    Geändert von dauni (13.06.03 um 21:34 Uhr)

  3. #3
    Registrierter Benutzer Avatar von ThorstenHirsch
    Registriert seit
    Nov 2002
    Beiträge
    6.556
    Entweder so:
    Code:
    #!/bin/sh
    export __GL_FSAA_MODE=0
    oder -weil ich dachte, dass hierbei vielleicht ne neue shell geöffnet wird und die Variable in nur in dieser gilt, aber nicht in meiner jetzigen Shell- weswegen ich sie so abgeändert habe:
    Code:
    export __GL_FSAA_MODE=0
    also quasi ohne die erste Zeile
    ¡Nuestro amigo... el Computador!

  4. #4
    Nerd Avatar von sepp2k
    Registriert seit
    Jul 2002
    Beiträge
    6.283
    Original geschrieben von ThorstenHirsch
    oder -weil ich dachte, dass hierbei vielleicht ne neue shell geöffnet wird
    Das ist auch so und dardurch, dass du die erste Zeile weglässt ändert sich das auch nicht. Wenn du nicht willst, dass eine neue shell geöffnet wird, musst du das script per
    source bla.sh
    oder
    . bla.sh
    aufrufen.
    Do you want your possessions identified?
    Og friend. Og good dude. Og died. Og now food.
    Gravity is a myth, the earth sucks.

  5. #5
    Registrierter Benutzer Avatar von ThorstenHirsch
    Registriert seit
    Nov 2002
    Beiträge
    6.556
    Es liegt übrigens NICHT an der speziellen Variablen. Ich hab das ganze eben noch mit $hans ausprobiert und da hat echo $hans mir auch nicht das ausgegeben, was ich in ner datei (export hans=3) gesetzt hab
    ¡Nuestro amigo... el Computador!

  6. #6
    Registrierter Benutzer Avatar von ThorstenHirsch
    Registriert seit
    Nov 2002
    Beiträge
    6.556
    Danke Sepp, so funktionierts!
    Aber ich will doch eigentlich __GL_FSAA_MODE systemweit verfügbar machen. Sonst wissenmeine Spiele doch gar nicht, welchen FSAA sie nutzen sollen.
    ¡Nuestro amigo... el Computador!

  7. #7
    Nerd Avatar von sepp2k
    Registriert seit
    Jul 2002
    Beiträge
    6.283
    Original geschrieben von ThorstenHirsch
    Aber ich will doch eigentlich __GL_FSAA_MODE systemweit verfügbar machen.
    Dann schreib den export-Befehl in die /etc/profile, die wird nämlich jedesmal 'gesourced' wenn du dich einloggst
    Do you want your possessions identified?
    Og friend. Og good dude. Og died. Og now food.
    Gravity is a myth, the earth sucks.

  8. #8
    Registrierter Benutzer Avatar von dauni
    Registriert seit
    Jan 2001
    Ort
    Meran
    Beiträge
    2.261
    Genau:


    Alle Variablenzuweisungen sind nur bis zum Ende der Shell wirksam, in der sie erzeugt wurden. Wollen wir bestimmte Variable dauerhaft zur Verfügung haben, so müssen sie in einer der Startdateien definiert (und auch exportiert !) werden

    /etc/profile

    /etc/profile.local

    ~/.profile

    ~/.bashrc

  9. #9
    Registrierter Benutzer Avatar von ThorstenHirsch
    Registriert seit
    Nov 2002
    Beiträge
    6.556
    Danke!!!
    ¡Nuestro amigo... el Computador!

Lesezeichen

Berechtigungen

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