“$ PATH” verdiğimde “geçerli bir tanımlayıcı değil”


Yanıtlar:


40

Koşu export $PATHeşit bir ada sahip bir değişken ihraç etmeye çalışacaktır değeri arasında $PATH(sonra kelime bölme ). Yani, bunun gibi bir şey yazmaya eşdeğerdir export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin. Beri /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bingeçerli bir değişken adı değil, başarısız olur. Yapmak istediğin şey export PATH.

export(eşdeğerde declare -x) Bash de değişkeni alt kabuklara uygun kılar.

Bir değişkenin değerini güvenli ve kolayca yazdırmak için kullanın printf %q "$PATH".


Temel olarak bazı değişkenler oluşturdum, JAVA_HOME, MAVEN_HOME ve bash'ın onları uygun şekilde ayarladığından emin olmak istiyorum, bu yüzden yol değişkenlerinin doğru şekilde PATH değişkenine ayarlanıp ayarlanmadığını görmek için $ PATH dışa
aktarıyorum

1
Bu işletim sistemi bağımlı değil kabuk bağımlı. exportBash'de böyle çalışmış olsaydım şaşırırdım.
l0b0

Ek olarak, PATH değişkeni zaten dışa aktarıldı ve tekrar dışa aktarılmasına gerek yok.
Kusalananda

19

Aşağıdaki komut export $PATH=somePathdönecek not a valid identifierve bu nedeniyle olduğunu $önce PATHdeğişken.

çözüm:

export PATH=somePath


0

Bunu bu şekilde kullanmalısın:

export PATH=$PATH:/something/bin

Onun yerine:

export $PATH=$PATH:/something/bin

sadece $işaretini sol taraftan kaldır .


-1

Muhtemelen mevcut PATH değişkeninize $ PATH ekleme ihtiyacı duydunuz?

export PATH=$PATH:/something/bin

2
Tamam, bu soru ile aynı top parkında, ancak sol alanda.
G-Man
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.