macOS Catalina 10.15 (beta) - ~ / .bash_profile neden kabuğumdan kaynaklanmıyor?


113

Ben hiç sınırının altında eklenen ortam değişkeni ayarlamak istediğiniz ~/.bash_profileve ~/.profileancak çalışma yapmadı.

export JBOSS_HOME=/Users/{USERNAME}/Desktop/jboss7

Daha sonra, terminalden çıkın ve çalıştırırken tekrar açın echo $JBOSS_HOMEHiçbir şey almadım.
görüntü açıklamasını buraya girin


Sanırım .bash_profile kaynaklı değil. Terminalinizin bir bash giriş kabuğu oluşturduğundan emin misiniz ? Aksi takdirde, .bash_profile göz ardı edilir.
user1934428

1
@ user1934428 Evet bu doğru. Varsayılan bash'ın neden değiştirildiğini bilmiyorum? !!
Reza Dehnavi

Ben anlamadım Hangi "varsayılan" değiştirildi? Hangi Terminal programını kullandığınızı söylemediniz, ancak genellikle Terminal uygulamasını kabuğun nasıl başlatılacağını yapılandırabilirsiniz.
user1934428

@ user1934428 Çeşitli kabuk olduğunu bilmiyordum.
Reza Dehnavi

Yanıtlar:


288

Apple, varsayılan kabuğu zsh olarak değiştirdi. Bu nedenle yapılandırma dosyalarınızı yeniden adlandırmanız gerekir. .bashrcşimdi .zshrcve .bash_profileşimdi .zprofile.


3
Apple, lisans endişeleri nedeniyle bash'den zshell'e geçti. thenextweb.com/dd/2019/06/04/…
Manuel Hernandez

109
Geliştirici kurulumumun her OS-X yükseltmesiyle nasıl bozulduğu harika bir kullanıcı deneyimi
Chris Hatton

2
@ChrisHatton Bir sonraki güncellemeyi beklemeye devam ediyorum, böylece mevcut kurulumumu bozabilir ve her şeye sıfırdan başlayabilir ve bir sonraki sürümü dört gözle bekliyorum!
Utsav Gupta

46

Herhangi bir nedenle (benim gibi) ~/.bash_profiledosyanızı yeniden adlandırmak / taşımak istemiyorsanız, sonraki şeyleri yapabilirsiniz:

  1. Yeni bir dosya oluştur ~/.zprofile
  2. Oraya yazın source ~/.bash_profile
  3. Kaydet ve kapat
  4. Yeni bir terminal oturumu çalıştırın

5

Adlı yeni bir dosya oluşturdum

/usr/local/bin/mybash

bir sarmalayıcı komut dosyası içeren:

/usr/local/bin/bash --init-file $HOME/.bashrc

Bu yerel / bin / bash'ı HomeBrew'den kurdum .

Tam Olay Dizisi

brew install bash
echo "/usr/local/bin/bash --init-file $HOME/.bashrc" > /usr/local/bin/mybash
chmod +x /usr/local/bin/mybash

Sonra terminal.app[cmd-virgül] ayarlarını açtım . Sekmenin altında Generalşunun radyo düğmesini seçin:Command (complete path)

Metin kutusunda olan metni olarak /bin/zsh/değiştirin /usr/local/bin/bash.

Nihai format örneği


1
Bu iyi bir seçenektir, çünkü yukarıdaki cevaplar belirli sözdizimlerinin zsh ve bash'de farklı olduğunu dikkate almamaktadır.
Prashant Sharma

3

Bir Terminal penceresini kapattıktan sonra, o pencerede ayarladığınız değişkenler artık kullanılamaz. Bir değişkenin değerinin oturumlar boyunca ve tüm Terminal pencerelerinde kalmasını istiyorsanız, onu bir kabuk başlangıç ​​komut dosyasında ayarlamanız gerekir. Değişkenleri ve diğer ayarları birden çok oturumda tutmak için zsh kabuğu başlangıç ​​komut dosyanızı değiştirme hakkında bilgi için, zsh kılavuz sayfasının "Çağırma" bölümüne bakın .

~/.zloginDeğişkenlerinizi eklemek için kullanabilirsiniz .

Bu referansa göz atın .


0

bash profilini zsh profiline değiştirmek işe yarar ve eylemde görmek için kaynağı da oluşturur.

vikas@Vikas-Kumar ~ % mv .bash_profile .zsh_profile
vikas@Vikas-Kumar ~ % source .zsh_profile

0

Simbolik bir bağlantı oluşturabilir ve .bash_profile dosyanızı şununla saklayabilirsiniz:

ln -s .bash_profile .zsh_profile
source .zsh_profile

.Bash_profile dosyasındaki herhangi bir değişiklik .zsh_profile dosyasına yansıtılacaktır.


Ln alıyorum: .zsh_profile: İşleme izin verilmiyor
Salman Ullah Khan

-1

dosyayı güncellemenize gerek yok, zsh, Mac'in varsayılanıdır, bunu terminale koyun. Örneğin:

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

-3
cp zprofile ~/.zprofile

Şuraya ekle .zprofile:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

Örneğin. tarafından>vi .zprofile

Bitti

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.