.profile atau .bash_profile

14

Saya bingung, di mana saya mengatur variabel lingkungan?

Dalam .profile atau .bash_profile?

Saya menggunakan mac osx dan ubuntu.

Bingung yang mana yang saya gunakan di sini.

pengguna27449
sumber

Jawaban:

21

baca http://www.gnu.org/software/bash/manual/bashref.html#Bash-Startup-Files :

 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. The 
 --noprofile option may be used when the shell is started to inhibit
 this behavior.

kerang lainnya memuat ~/.profilejuga (zsh, tcsh) .. jadi, saya akan memasukkan hal-hal lingkungan ke dalamnya ~/.profile.

pembaruan terkait mac osx (terima kasih @Matt B) :

untuk program gui baca http://developer.apple.com/library/mac/#qa/qa2001/qa1067.html dan edit ~/.MacOSX/environment.plistdengan cermat.

akira
sumber
1
Selain itu, ~ / .profile dibaca sebelum window manager Anda dimulai, jadi variabel lingkungan yang ingin Anda lihat oleh window manager Anda atau aplikasi yang diluncurkan harus dimasukkan ke dalam file ~ / .profile Anda.
garyjohn
@garyjohn: Apakah itu kasus untuk Ubuntu atau Mac OS?
zneak
@ zneak: Saya cukup yakin tentang Ubuntu, kurang begitu tentang Mac OS X, tapi saya tidak memiliki akses ke salah satu untuk memverifikasi saat ini.
garyjohn
1
@zneak: @ garyjohn's comment tidak berlaku untuk Mac OS X. Untuk mengubah variabel lingkungan untuk program GUI, Anda harus menempatkan pengaturan Anda ke dalamnya ~/.MacOSX/environment.plist. Lihat informasi lebih lanjut di sini: astro.washington.edu/users/rowen/AquaEnvVar.html .
Matt B.
4

Jika Anda menggunakan bash, di ~/.bash_profile. Jika Anda menggunakan kerang lain, di~/.profile

Steven
sumber