Nu „știu cum să adaug permanent căi la PATH env var. Am găsit mai multe întrebări pentru asta de fiecare dată cu răspunsuri diferite. Am creat un .bash_profile
în directorul meu de acasă, dar de fiecare dată când repornesc trebuie să îmi manual manual export
din nou.
source ~/.bash_profile
nici măcar nu funcționează.
Ce îmi lipsește?
Acesta este în prezent .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"
Comentarii
Răspuns
Ceea ce ați prezentat este modalitatea corectă de a adăuga directoare suplimentare utilizatorului dvs. $PATH
.
Pasul 1 – ~/.bash_profile
Pentru a începe să efectuați modificări la ~/.bash_profile
adăugând orice locații doriți doresc să fi modificat $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"
Pasul 2 – sursa ~/.bash_profile
După ce ați făcut modificările de mai sus la acest fișier, puteți folosi comanda source
sau .
notație la „reîncărcare” și modificările aduse acestui fișier în contextul shell-ului curent.
$ . ~/.bash_profile
-or-
$ source ~/.bash_profile
Pasul 3 – Evaluarea modificărilor
După efectuarea modificărilor și obținerea acestora puteți confirma că au avut efectul pe care l-ați dorit, repetând conținutul 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/
Comanda contează, astfel încât directorele care apar mai întâi vor fi căutate mai întâi. Dacă un binar trăiește în mai multe locuri, primul loc întâlnit va fi cel utilizat.
Rețineți, de asemenea, că mai multe surse ale acestui fișier vor avea un efect negativ de a continua să adăugați aceleași modificări, deci este adesea cazul în care veți dori să configurați complet $PATH
într-o stare inițială consistentă cunoscută și apoi să o modificați cu aceste tipuri de comenzi:
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin" export PATH="/some/new/dir:$PATH"
Utilizarea path_helper
MacOS include, de asemenea, un ajutor pentru asistență în gestionarea $PATH
. Se află aici /usr/libexec/path_helper
.
Deci, în loc să vă creați manual baza $PATH
, așa cum s-a menționat mai sus, puteți în schimb utilizați acest fragment pentru a obține un bun punct de plecare cunoscut pentru $PATH
.
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
Acest lucru va avea grijă să inițializați $PATH
astfel încât orice directoare listate în /etc/paths
și /etc/paths.d/
să fie adăugate automat.
Comentarii
- Ar putea fi mai bine să utilizați
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
pentru a inițializa calea, astfel încât orice directoare listate în/etc/paths
și/etc/paths.d/
se adaugă automat. - @nohillside are sens. Nu eram ' Nu știți că MacOS avea acest ajutor, mulțumesc, voi ' voi adăuga la A ' er.
- Am o privire la
/etc/profile
. ' nu se întâmplă prea mult acolo, ci inițial isingPATH
face parte din el. - Doar un cap ' este în sus,
~./bash_profile
doar rute către~/.bashrc
care este fișierul real pe care a trebuit să îl modific. - @slm
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
eliminarea celei de-a doua părți îmi dă același rezultat ca și folosirea primei părți cândsource ~/.bash_profile
de mai multe ori. Poate că ar fi utilă o explicație a ceea ce face fiecare parte.
echo $PATH
echo $PATH
, așa că am putut vedea în mod explicit și concret care a fost rezultatul. Ne pare rău, dar nu pot ' să ajut dacă Nu mi s-au dat informațiile pe care le solicitez!/Applications/XAMPP/xamppfiles/bin:/usr/local/opt/openssl/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin