Sotto 10.8 quale file memorizza le variabili di ambiente?

3

Questo è stato così dal 10.6. Non c'è nessun file .bashrc nel dizionario home, ma la variabile di ambiente PATH esiste effettivamente come risultato di questo comando mostra:

$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

Qualcuno sa come / dove OS X memorizza le variabili d'ambiente?

    
posta mko 27.07.2012 - 13:20
fonte

3 risposte

4

Il percorso predefinito a livello di sistema è in /etc/paths . L'impostazione predefinita su un sistema 10.8 contiene quanto segue:

/usr/bin

/bin

/usr/sbin

/sbin

/usr/local/bin

Per aggiungere ulteriori voci di PATH di sistema, è possibile modificare tale file, ma un'opzione migliore sarebbe quella di aggiungere un file con le voci del percorso aggiuntivo alla directory /etc/paths.d . Il file creato dall'utente verrà protetto durante eventuali aggiornamenti / patch, che potrebbero sostituire un /etc/paths personalizzato con una versione distribuita Apple.

In alternativa, potresti inserire le appropriate% di modifica di% di enunciazione in PATH o /etc/profile (nel caso di bash, userà solo quest'ultimo se il primo non esiste). Qualsiasi altro cambiamento di ambiente a livello di sistema può essere fatto usando anche quei file.

La configurazione specifica dell'utente può essere inserita in /etc/bashrc o $HOME/.bashrc .

Nota: in quanto sopra, ho pensato che stai usando bash - se stai usando csh o zsh, dovrai modificare i loro file di configurazione (le informazioni su $HOME/.bash_profile e /etc/paths rimane valido, tuttavia).

    
risposta data 27.07.2012 - 15:26
fonte
1

Potresti creare il tuo file .profile o .bashrc per impostare le variabili di ambiente per il tuo utente.

    
risposta data 27.07.2012 - 15:15
fonte
0

Dove si impostano le variabili ambientali per una shell, quale file si utilizza dipende dalla shell in esecuzione.

Per determinare quale shell stai correndo nel Terminale prova:

echo $SHELL

Una volta che hai puoi leggere la pagina di manuale della tua shell, che probabilmente sarà bash.

man bash

Se stai eseguendo bash, questo segmento dal il manuale di bash sarà utile.

When bash is invoked as an interactive login shell, or as a non-interactive shell with the --login option, it first reads and executes commands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable. The --noprofile option may be used when the shell is started to inhibit this behavior.

    
risposta data 27.07.2012 - 15:30
fonte

Leggi altre domande sui tag