1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

.profile wird nicht beachtet im Terminal

Dieses Thema im Forum "Unix & Terminal" wurde erstellt von philo, 09.01.06.

  1. philo

    philo Roter Stettiner

    Dabei seit:
    13.10.04
    Beiträge:
    973
    hallo,

    ich glaube ich habe bisher immer die bash benutzt und hatte in der .profile meine Umgebungsvariablen gesetzt.

    Plötlich sagen mir die Programme (zB Tomcat), dass die JAVA_HOME nicht gesetzt sei.

    Es hat immer alles funktioniert mit der bash und der .profile . habe ich sie geändert, dann waren nach einem neustart des Terminals die änderungen drin.

    Geht aber alles nicht mehr. Ich habe auch nicht an der .profile rumgespielt, oder so.

    EDIT: mit /bin/bash --rcfile .profile als starteinstellung oder durch ausführen dieses kommandos, funktioniert wieder alles. nur komisch, dass er die früher von selbst gelden hat.

    Kann mir jemand helfen, bitte.
    Grussund Danke
    philo
     
  2. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Die .bashrc wird gelesen, wenn die bash als Nicht-Loginshell, beispielsweise durch Erzeugen einer neuen Subshell per Tippen von 'bash' gestartet wird.

    Die .bash_profile wird gelesen, wenn die bash als Loginshell, beispielsweise durch einen neue Terminalsession gestartet wird.

    Ich empfehle, in der .bash_profile die Zeile
    . .bashrc
    einzufügen, damit die .bashrc immer genutzt wird und in der .bashrc die Einstellungen zu machen.

    Eine .profile wird von der Bash nie gelesen, es sei denn Du gibst sie ausdrücklich als Ersatz von ~/.bashrc an per --rcfile, so wie Du es dann gemacht hast.

    JAVA_HOME setzt man am besten in der
    ~/.MacOSX/environment.plist
    für alle Prozesse unabhängig von der Shell.

    Inhalt:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>JAVA_HOME</key>
    <string>/Library/Java/Home</string>
    </dict>
    </plist>

    Verzeichnis .MacOSX per Hand anlegen, dann mit Propertylisteditor die Propertydatei erzeugen.

    Zu dem Thema gibt es das hervorragende Buch von Thomas Much: Java für Mac OS X
    http://muchsoft.de/java/index.html
    Empfehle ich jedem, der Java auf dem Mac macht.
     
  3. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.903
    Aha.

    When bash is invoked as an interactive login shell,
    or as a non-interactive shell with the --login option,
    it first reads and executes commands from the file
    /etc/profile, if that file exists. After reading that file,
    it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile,
    in that order, and reads and executes commands from
    the first one that exists and is readable.
     
  4. philo

    philo Roter Stettiner

    Dabei seit:
    13.10.04
    Beiträge:
    973
    danke rastafari, für die klarstellung. steht woll in den manpages?
    jetzt macht das auch alles sinn. um nano syntax-highlighting beizubringen, hatte ich ne .bash_profile erstellt. und da stand dann natuerlicn nicht das aus meiner .profile drin.

    @MacMark

    danke für den tipp mit den Properties, aber das ist mir nich unix-typisch, daher bleibe ich lieber bei den sachen, die dann auch unter linux/unix funktionieren.

    gruss
    philo
     
  5. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Also wird die ~/.profile praktisch nie aufgerufen ;)
     

Diese Seite empfehlen