Ripristina il percorso da leggere da / private / etc / paths

2

Ho usato il come da link

per installare AWS CLI su macOS. Dopo aver eseguito il comando source ~/.bash_profile sembra che la mia posizione PATH predefinita da file / private / etc / paths sia stata persa.

/ private / etc / paths file content:

/usr/bin/vim /private/etc/paths

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

~ / .bash_profile contenuto del file:

# Setting PATH for Python 3.6
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
export PATH

Ad esempio il prossimo comando non può trovare la posizione dei file di base installati in / usr / bin /: -bash: vim: comando non trovato

È un modo per ripristinare il percorso da leggere da / private / etc / paths?

echo $PATH
/Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/<myusername>/bin:/Library/Python/3.6/bin/

Inoltre non posso usare lo stesso comando per rileggere dalla posizione

source /private/etc/paths
-bash: /usr/local/bin: is a directory
-bash: /usr/bin: is a directory
-bash: /bin: is a directory
-bash: /usr/sbin: is a directory
-bash: /sbin: is a directory
    
posta user2105282 02.05.2018 - 13:55
fonte

1 risposta

2
  1. Correggi il tuo contenuto / privato / etc / percorsi:

    Il contenuto predefinito è:

    /usr/local/bin
    /usr/bin
    /bin
    /usr/sbin
    /sbin
    

    Se vuoi includere / usr / bin / vim (ma solo se vim è una cartella contenente alcuni file eseguibili - il file macOS installato vim exec è / usr / bin / vim!) modifica il contenuto in:

    /usr/local/bin
    /usr/bin/vim
    /usr/bin
    /bin
    /usr/sbin
    /sbin
    
  2. Hai un'altra linea (superiore) export PATH da qualche parte (cioè i file di configurazione di bash) con il seguente contenuto:

    export PATH="/Users/<myusername>/bin:/Library/Python/3.6/bin/:*"
    

    con * = o completamente mancante o una variabile PATH falsamente definita (ad esempio Path invece di PATH)

    Almeno non eredita i percorsi standard definiti da / private / etc / paths

    Questa prima esportazione PATH e la seconda nel tuo ~ / .bash_profile producono qualcosa di rotto come:

    /Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/<myusername>/bin:/Library/Python/3.6/bin/ 
    

    come PATH

risposta data 02.05.2018 - 14:53
fonte

Leggi altre domande sui tag