Když spustím export $PATH v bash, zobrazí se chyba not a valid identifier. Proč?

Komentáře

  • V prostředí bash a jiných skořápkách je $ „hodnota“. ' exportujete proměnnou PATH, která nepřistupuje k její hodnotě, takže ' s export PATH bez $.
  • Častější podobný problém: askubuntu.com/questions/529919/ …

odpověď

Spuštění export $PATH se pokusí exportovat proměnnou s názvem rovným hodnotě z $PATH (po rozdělení slov ). To znamená, že to odpovídá psaní něčeho jako export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin. A protože /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin není platný název proměnné, selže. To, co chcete udělat, je export PATH.

export (ekvivalent k declare -x) v Bash jednoduše zpřístupní proměnnou podsloupce.

Chcete-li bezpečně a čitelně vytisknout hodnotu proměnné, použijte printf %q "$PATH".

Komentáře

  • V podstatě jsem vytvořil nějaké proměnné, JAVA_HOME, MAVEN_HOME a chci se ujistit, že je bash správně nastavil, takže exportuji $ PATH, abych zjistil, zda byly proměnné cesty správně nastaveny na proměnnou PATH
  • Toto je závislé na prostředí, nikoli na OS. Byl bych překvapen, kdyby export někdy fungoval takhle v Bash.
  • Navíc proměnná PATH je již exportováno a není třeba být znovu exportovány.

Odpovědět

Následující příkaz export $PATH=somePath vrátí not a valid identifier a to kvůli $ před proměnnou PATH.

řešení:

export PATH=somePath

Komentáře

  • To je to, co přesně odpovídá na můj dotaz. Díky Kevinovi

Odpověď

Měli byste to použít takto:

export PATH=$PATH:/something/bin 

Místo:

export $PATH=$PATH:/something/bin 

stačí odstranit znak $ zleva ruka.

Odpověď

Pravděpodobně jste museli přidat $ PATH ke své stávající proměnné PATH?

export PATH=$PATH:/something/bin 

Komentáře

  • Dobře, toto je ve stejném parku s míčem, ale v levém poli .

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *