Saya mencoba semua metode yang saya dengar untuk pengaturan variabel lingkungan pada OS X 10.8 tetapi tidak satupun dari mereka yang berfungsi.
Untuk menguji, jalankan skrip bash dari dalam aplikasi gui seperti Eclipse atau IntelliJ IDEA.
#!/bin/bash
set|grep PATH
Hal-hal yang saya uji dan yang tidak berfungsi bahkan setelah reboot:
/etc/paths
dan/etc/paths.d/something
/etc/launchd.conf
~/.bash_profile
~/.MacOSX/environment.plist
(binary plist dibuat sesuai anjuran)- berjalan
launchctl setenv PATH $PATH
dari baris perintah, ini seharusnya memperbarui PATH untuk aplikasi GUI, setidaknya untuk sesi saat ini. Coba tebak, tidak ada perubahan.
Tampaknya PATH selalu PATH=/usr/bin:/bin:/usr/sbin:/sbin
untuk aplikasi GUI.
macos
path
environment-variables
Sorin
sumber
sumber
Jawaban:
Dengan Mountain Lion
/etc/launchd.conf
adalah tempat Anda harus mengatur Path aplikasi GUI. Ingat itu bukan file skrip; itu hanya mendukunglaunchctl
perintah sehingga Anda harus menulis sesuatu seperti:Perhatikan juga bahwa itu tidak mendukung substitusi variabel lingkungan shell (seperti
$PATH
) sehingga Anda harus mengatur setiap jalur yang ingin Anda sertakan. Sebaiknya pertahankan jalur asli yang telah Anda sebutkan (/usr/bin:/bin:/usr/sbin:/sbin
).Anda harus memulai ulang setelah mengubah (atau membuat) file agar perubahan diterapkan.
sumber
-bash: setenv: command not found
setenv
adalahlaunchctl
perintah, jadi Anda menggunakannya sepertilaunchctl setenv
.Ini berfungsi jika Anda memanggil aplikasi GUI dari Terminal:
Tidak benar-benar bagus atau nyaman tetapi itu berfungsi jika diperlukan.
sumber
Saya memasak solusi lain, terinspirasi oleh patrix satu di sini , yang mudah-mudahan sedikit kurang menyakitkan. Buka
Automator
, pilih aplikasi sebagai target, dan pilihExecute Shell script
(atau apa pun namanya, dalam bahasa Jerman itu adalah "Shell-Skript ausführen" seperti dapat dilihat di atas) sebagai tindakan. Dalam skrip, ketik sajaKemudian simpan semuanya di mana pun Anda inginkan, dan jika Anda perlu menjalankan Aplikasi Anda Di Sini , buka "aplikasi automator" yang dibuat.
Saya menguji dengan
Terminal
sebagai YourApplicationHere , dan melihat denganlaunchctl export
yang FOO memang diatur ke bar . Saya harap ini bekerja untuk orang lain juga.Akhirnya, jika Anda menggunakan solusi ini untuk variabel lingkungan Anda, alih-alih mengetikkan
launchctl
hal - hal di skrip shell, Anda bisa memanggil/Users/Shared/conflaunchd.sh
(yang harus Anda make up terlebih dahulu, bersama dengan file yang menjelaskan variabel).sumber
Seharusnya,
launchctl
menyediakanPATH
untuk Aplikasi GUI. Untuk mengatur path ke path shell, tambahkan berikut ini ke file rc shell Anda setelah mengatur path Anda:sumber