GNU/Linux >> Linux Esercitazione >  >> Linux

Come esportare permanentemente una variabile in Linux?

Sui sistemi Ubuntu, utilizza le seguenti posizioni:

  1. Variabili persistenti a livello di sistema nel formato JAVA_PATH=/usr/local/java negozio in

    /etc/environment
    
  2. Variabili persistenti a livello di sistema che fanno riferimento a variabili come
    export PATH="$JAVA_PATH:$PATH" negozio in

    /etc/.bashrc
    
  3. Variabili persistenti specifiche dell'utente nel formato PATH DEFAULT=/usr/bin:usr/local/bin negozio in

    ~/.pam_environment
    

Per maggiori dettagli su #2, controlla questa risposta Chiedi a Ubuntu. NOTA:#3 è la raccomandazione di Ubuntu ma potrebbe avere problemi di sicurezza nel mondo reale.


Puoi aggiungerlo al tuo file di configurazione della shell, ad es. $HOME/.bashrc o più globalmente in /etc/environment .Dopo aver aggiunto queste righe, le modifiche non si rifletteranno istantaneamente nei sistemi basati sulla GUI, devi uscire dal terminale o crearne uno nuovo e nel server disconnettersi dalla sessione e accedere per riflettere queste modifiche.


aggiungi la linea al tuo .bashrc o .profile . Le variabili impostate in $HOME/.profile sono attivi per l'utente corrente, quelli in /etc/profile sono globali. Il .bashrc viene estratto all'avvio di ogni sessione bash.


Devi modificare tre file per impostare una variabile d'ambiente permanente come segue:

  • ~/.bashrc

    Quando apri una finestra di terminale, questo file verrà eseguito. Pertanto, se desideri avere una variabile d'ambiente permanente in tutte le finestre del tuo terminale, devi aggiungere la seguente riga alla fine di questo file:

    export DISPLAY=0
    
  • ~/.profilo

    Uguale a bashrc devi inserire la suddetta riga di comando alla fine di questo file per avere la tua variabile d'ambiente in ogni accesso del tuo sistema operativo.

  • /etc/ambiente

    Se vuoi la tua variabile d'ambiente in ogni finestra o applicazione (non solo nella finestra del terminale) devi modificare questo file. Aggiungi il seguente comando alla fine di questo file:

    DISPLAY=0
    

    Nota che in questo file non devi scrivere export comando

Normalmente è necessario riavviare il computer per applicare queste modifiche. Ma puoi applicare le modifiche in bashrc e profilo da questi comandi:

$ source ~/.bashrc
$ source ~/.profile

Ma per /etc/environment non hai altra scelta che riavviare (per quanto ne so)

Una soluzione semplice

Ho scritto un semplice script per queste procedure per fare tutto quel lavoro. Devi solo impostare il nome e il valore della tua variabile d'ambiente.

#!/bin/bash
echo "Enter variable name: "
read variable_name
echo "Enter variable value: "
read variable_value
echo "adding " $variable_name " to environment variables: " $variable_value
echo "export "$variable_name"="$variable_value>>~/.bashrc
echo $variable_name"="$variable_value>>~/.profile
echo $variable_name"="$variable_value>>/etc/environment
source ~/.bashrc
source ~/.profile
echo "do you want to restart your computer to apply changes in /etc/environment file? yes(y)no(n)"
read restart
case $restart in
    y) sudo shutdown -r 0;;
    n) echo "don't forget to restart your computer manually";;
esac
exit

Salva queste righe in un file sh poi rendilo eseguibile ed eseguilo!


Linux
  1. Come impostare la tua variabile $PATH in Linux

  2. Scopri come impostare le variabili $PATH in modo permanente in Linux

  3. Come impostare la variabile $ Path in Linux

  4. Esempi di comandi di esportazione Linux (come impostare le variabili di ambiente)

  5. Come modificare la variabile PATH in Linux

Come memorizzare un comando Linux come variabile nello script della shell

Come aggiungere una directory a PATH in Linux [Suggerimento rapido]

Come disabilitare permanentemente lo scambio in Linux

Spiegazione del comando di esportazione in Linux

Esporta comando in Linux

Come impostare permanentemente $ PATH nel sistema Linux