Kun suoritan export $PATH bashissa, saan virheen not a valid identifier. Miksi?

Kommentit

  • Bashissa ja muissa kuoreissa $ on ”arvo”. ' viet muuttujan PATH uudelleen, et pääse sen arvoon, joten se ' s export PATH ilman $.
  • Yleisempi samanlainen ongelma: askubuntu.com/questions/529919/ …

vastaus

Käynnissä export $PATH yritetään viedä muuttuja, jonka nimi on sama kuin arvo / $PATH (sanan jakamisen jälkeen ). Toisin sanoen se vastaa kirjoittamista esimerkiksi export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin. Ja koska /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ei ole kelvollinen muuttujan nimi, se epäonnistuu. Mitä haluat tehdä, on export PATH.

export (vastaa declare -x) Bashissa tekee muuttujan yksinkertaisesti saataville alikuoret.

Tulosta muuttujan arvo turvallisesti ja luettavasti käyttämällä printf %q "$PATH".

Kommentit

  • Olen pohjimmiltaan luonut joitain muuttujia JAVA_HOME, MAVEN_HOME ja haluan varmistaa, että bash on asettanut ne oikein, joten viennin $ PATH nähdäksesi onko polun muuttujat asetettu oikein PATH-muuttujaan
  • Tämä riippuu kuoresta, ei käyttöjärjestelmästä. Olisin yllättynyt, jos export toimisi joskus tällä tavalla Bashissa.
  • Lisäksi PATH-muuttuja on jo viety eikä sitä tarvitse viedä uudelleen.

Vastaa

Seuraava komento export $PATH=somePath palauttaa not a valid identifier ja se johtuu $ -muuttujan PATH edestä.

ratkaisu:

export PATH=somePath

Kommentit

  • Se on mikä vastaa kyselyni tarkalleen. Kiitos Kevin

Vastaa

Käytä sitä tällä tavalla:

export PATH=$PATH:/something/bin 

Sen sijaan, että:

export $PATH=$PATH:/something/bin 

poista vain merkki $ vasemmalta käden puolella.

Vastaus

Onko sinulla todennäköisesti tarvetta lisätä $ PATH nykyiseen PATH-muuttujaasi?

export PATH=$PATH:/something/bin 

Kommentit

  • OK, tämä on samassa pallopuistossa kuin kysymys, mutta se on vasemmalla kentällä .

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *