Mac OSX'te Bash nasıl sıfırlanır, .bash_profile bozuk ve bash artık çalışmıyor


17

Mountain Lion'un en son sürümünü çalıştıran bir MacBook Pro'dayım.

Gerçekten biraz yardıma ihtiyacım var, bazı .bash_profile (sanırım) zarar vermeyi başardım, böylece terminali her açışımda aşağıda listelenen hatayı alıyorum.

-bash: export: `/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/go/bin': not a valid identifier
-bash: export: `/Users/rob/Applications/sbt/bin:': not a valid identifier
env: bash: No such file or directory
env: bash: No such file or directory
env: bash: No such file or directory
env: bash: No such file or directory
env: bash: No such file or directory
-bash: tar: command not found
-bash: grep: command not found
-bash: cat: command not found
-bash: find: command not found

Ne olduđundan emin deđilim, sudo, cd veya normal komutlarým yok. Ana dizinlerden herhangi birine ulaşabildim tek yolu bulucu klasör komutu gidin ve boşuna dosyayı bulmaya çalışmaktır.

Her şeyin üstünde, soruna neden olabilecek bir dosya oluşturduğumu düşünüyorum, ben yazdım .bash_profile düzenlemek istedim

sudo nano ./bash_profile

Bu nano'da daha sonra kaydedildiğini düşündüğüm yeni bir dosya açar. Bundan sonra node.js yolunu eklemek için gerçek .bash_profile dosyasını açtım.

Eğer .bash_profile alabilirim Ben geri yolda alabilirim ama bulamıyorum, bash yeniden gerekir? Öyleyse bunu bir mac'ta nasıl yaparım, kullanmayı denedim

brew install bash

aldığım

-bash: brew: command not found

Denemek için ilk şey, sorunu çözmek için farklı bir kabuk değiştirmek için: bu support.apple.com/kb/TA27005 nasıl yapacağınıza bakın . Bu, rahatsız edici dosyayı değiştirmenizi / kaldırmanızı ve kabuğu tekrar olarak değiştirmenizi sağlar bash.
Gjallar

Teşekkürler, bash'ı yeniden yüklemeyi denedim ama değişen tek şey -bash: export: '/Users/rob/Applications/sbt/bin:': not a valid identifiergitti. Mücadele ettiğim tek şey, ilk satırın depolanmış olabileceğiydi, .bash_profile, .profile ve .bashrc'ye baktım ama hiçbir şey yoktu.
Strangeone

Tamam /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/go/bin.bash_profile'ım eklendi ve sabit bash var gibi görünüyor ama yine de bu hatayı alıyorum -bash: export: '/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/go/bin': not a valid identifierHerhangi bir fikir?
Strangeone

Aşağıdakileri deneyebilir misiniz: PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/go/bin:$PATH" # Make sure to use double quotes not single quotesVe yeni bir satırda export PATH.
Gjallar

Teşekkür ederim, işe yaramış gibi görünüyor. Lütfen bunun neden işe yaradığını düşündüğünüzü sorabilir miyim?
Strangeone

Yanıtlar:


12

Bir cevap için tüm yorumlarımı bir araya getirmek:

Yapmanız gereken ilk şey kabuğu değiştirmek, bu şekilde bash init-script'lerini yüklemeyecek bir kabuk ayarlayabilirsiniz ( .bashrc, .bash_profile) - Mac OS X terminal uygulaması için bunun nasıl yapılacağı burada görülebilir: Apple Destek

Şimdi bir terminali tekrar açabilmeniz ve .bash_profiledosyayı açmak için favori komut satırı düzenleyicinizi kullanabilmeniz gerekir (örn. nanoVeya vi):

Bu dosyada PATH, terminal tarafından çalıştırabileceği programları bulmak için kullanılan değişkeninizi sıfırlamanız gerekir .

Bu, aşağıdaki iki satırla yapılabilir:

PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH" # Make sure to use double quotes not single quotes And on a new line 
export PATH

Bu, ilk önce PATH'nizde olmasını istediğiniz dizinleri ayarlayacak ve bu PATH'yi bu kabuktan başlatılan tüm programlara (dışa aktarma yoluyla) sunmak için dışa aktaracaktır.


21

⇧⌘. dosya diyaloglarında gizli dosyaları gösterir. ~ / .Bash_profile dosyasını TextEdit ile açmayı ve geçici olarak boş bırakmayı deneyebilirsiniz.


Bilmiyordum yararlı klavye kısayolu için +1 :)
Michel

not: .bash_profile giriş dizininizdedir (Kullanıcılar / [kullanıcı adı] /. bash_profile
Amos

teşekkürler @ Lri, günümü kurtardı!
Vicky_Vignesh

4

Aynı sorun üzerinde çalışıyordum ve daha basit bir çözüm buldum:

/usr/bin/nano .bash_profile

tüm karışıklığınızı silip dosyayı kaydedin


En iyi cevap. Kolay ve çalışması garanti.
nikk wong

3

Bu eski bir iş parçacığı olduğunu biliyorum ama sadece benim çözüm başka birinin aynı sorunu olması umuduyla burada bırakmak istedim.

MacOS'tan terminal çalıştırdığımda kendi kullanıcımla iyiydim, ancak sudo olarak değiştirilemedi (komut bulunamadı).

Ben ile sabitleme sona erdi:

nano ~/.bashrc

Hataya neden olan yolu kaldırdım. Terminal yeniden başlatıldı ve şimdi her şey yolunda gidiyor.


0

Geçenlerde DOS tarzı dosyaların OS-X hem .bash * komut dosyaları için sorunlara neden olduğunu keşfettim. Ben Windows kullanıcıları ile paylaşılan bazı kodlar için DOS dosya sonları kullanmak zorunda, bu yüzden git git deposu sırasında .bash_profile düzenlerseniz ben komut dosyası (oturum açma) çalıştırırken hata iletileri bir sürü olsun. Dos2unix yardımcı programı bunu düzeltti.


-1

Daha önce bahsedilen gizli dosyaların gösterilmesine ve bir metin düzenleyicisi kullanılmasına ek olarak, varsayılan kabuğunuzu değiştirmeden yeni bir kabuk açmanın daha kolay bir yolu da vardır. Terminal uygulamasını alt tıklayıp "Yeni Komut ..." u seçebilirsiniz. Sonra iletişim kutusuna "sh" yazın ve çalıştırın. Bu, bash olmayan bir kabuk açar ve dosyayı orada düzenleyebilirsiniz. Gelecekte, bir kabuk açık tutmak veya yeni .bash_profile'ı çalıştırmadan önce test etmek iyi bir fikir olacaktır.

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.