En tiedä miten lisätä pysyvästi polkuja PATH env -muuttujaan. Olen löytänyt useita kysymyksiä tämä joka kerta erilaisilla vastauksilla. Loin kotini hakemistoon .bash_profile, mutta joka kerta kun käynnistän uudelleenkäynnistyksen, minun on tehtävä manuaalisesti export polkuni uudelleen.

source ~/.bash_profile ei edes toimi.

Mitä puuttuu?

Tämä on tällä hetkellä .bash_profile

export PATH="/usr/local/opt/python/libexec/bin:$PATH" export PATH="/usr/local/opt/openssl/bin:$PATH" export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH" export LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include" 

Kommentit

  • Mitä tarkoitat merkinnällä " lähde ~ / .bash_profile ei ' edes toimi "? Saitko virheilmoituksen?
  • Sulje pääte ja avaa se sitten uudelleen … mikä ' s on seurausta: echo $PATH
  • @ user3439894 joo, että ' on outoa, itse asiassa polut ovat kaikki täällä, ensimmäinen rivi suljettu pois (python-yksikkö)
  • Odotin sinun lähettävän echo $PATH -tulos, jotta voisin nähdä nimenomaisesti ja tarkasti, mikä tulos oli. Anteeksi, mutta en voi auttaa ' auttaa, jos m ei ole antanut pyytämiäni tietoja!
  • /Applications/XAMPP/xamppfiles/bin:/usr/local/opt/openssl/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

Vastaa

Se, mitä olet asettanut, on oikea tapa lisätä hakemistoja käyttäjällesi ”s $PATH.

Vaihe 1 – ~/.bash_profile

Muokkausten aloittaminen ~/.bash_profile lisäämällä mihin tahansa sijaintiin haluaisin olla muuttanut tiedostoon $PATH.

export PATH="/usr/local/opt/python/libexec/bin:$PATH" export PATH="/usr/local/opt/openssl/bin:$PATH" export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH" 

Vaihe 2 – lähde ~/.bash_profile

Kun olet tehnyt yllä olevat muutokset tähän tiedostoon, voit käyttää joko source -komentoa tai . merkintä ”lataa” ja tähän tiedostoon tehdyt muutokset nykyisessä komentotulkkikontekstissasi.

$ . ~/.bash_profile 

-tai-

$ source ~/.bash_profile 

Vaihe 3 – Arvioi muutokset

Kun olet tehnyt muutokset ja hankkinut ne, voit vahvistaa, että niillä oli haluamasi vaikutus toistamalla varible.

$ echo $PATH | tr ":" "\n" /usr/local/bin /usr/bin /bin /usr/sbin /sbin /opt/X11/bin /Applications/Wireshark.app/Contents/MacOS /usr/local/sbin /Users/smingolelli/bin /usr/local/opt/go/libexec/bin /Applications/Visual Studio Code.app/Contents/Resources/app/bin /Users/smingolelli/projects/kubebuilder/kubebuilder_1.0.5_darwin_amd64/bin/ 

Järjestyksellä on merkitystä, joten ensin esiintyvät hakemistot etsitään ensin. Jos binaari asuu useissa paikoissa, ensimmäinen kohtaamasi kohta on käytetty.

Muista myös, että tämän tiedoston useilla lähteillä on kielteinen vaikutus samojen muutosten lisäämiseen, joten usein tapahtuu se, että haluat $PATH: n siirtyä täysin johdonmukaiseen tunnettuun alkutilaan ja muuttaa sitä tämän tyyppisillä komennoilla:

export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin" export PATH="/some/new/dir:$PATH" 

path_helperin käyttäminen

macOS sisältää myös auttajan, joka auttaa $PATH -sovelluksesi hallinnassa. Se sijaitsee täällä /usr/libexec/path_helper.

Joten tukiaseman käsin tekemisen sijasta $PATH kuten edellä mainittiin, voit myös käytä tätä katkelmaa saadaksesi tunnetun hyvän aloituskohdan $PATH.

[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s) 

Tämä huolehtii alustamisesta $PATH joten kaikki hakemistot, jotka on lueteltu kohdissa /etc/paths ja /etc/paths.d/, lisätään automaattisesti.

Kommentit

  • Saattaa olla parempi käyttää [ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s) polun alustamiseen, jotta kaikki hakemistot, jotka on lueteltu kohdassa /etc/paths ja /etc/paths.d/ lisätään automaattisesti.
  • @nohillside on järkevää. En ollut ' t tietoinen siitä, että macOS: lla oli tämä auttaja, kiitos, ' lisän A ' eriin.
  • Onko sinulla katsaus /etc/profile. Siinä ' ei ole paljon tekemistä, mutta alku ising PATH on osa sitä.
  • Vain pää ' s ylös, minun ~./bash_profile vain reitti osoitteeseen ~/.bashrc, joka on todellinen tiedosto, jota minun oli muokattava.
  • @slm [ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s) toisen osan poistaminen antaa minulle saman tuloksen kuin ensimmäisen osan käyttäminen, kun source ~/.bash_profile useammin kuin kerran. Ehkä selitys siitä, mitä kukin osa tekee, olisi hyödyllinen.

Vastaa

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