Android

Kako postaviti i navesti varijable okoline u Linuxu

GDB

GDB

Sadržaj:

Anonim

U varijablama okruženja sustava temeljenih na Linuxu i Unixu skup je dinamičkih imenovanih vrijednosti, pohranjenih u sustavu koje koriste aplikacije pokrenute u školjkama ili pretplatnicama. Jednostavnim riječima, varijabla okoline je varijabla s imenom i pridruženom vrijednošću.

Promjenjive okoline omogućuju vam prilagođavanje rada sustava i ponašanja aplikacija u sustavu. Na primjer, varijabla okoline može pohraniti informacije o zadanom uređivaču teksta ili pregledniku, putu do izvršne datoteke ili postavkama jezika jezika i tipkovnice.

U ovom ćemo vodiču objasniti čitanje i postavljanje varijabli okruženja i ljuske.

Okolišne varijable i ljuske

Varijable imaju sljedeći format:

KEY=value KEY="Some other value" KEY=value1:value2

  • Nazivi varijabli razlikuju velika i mala slova. Prema ugovoru, varijable okoline trebaju imati nazive GORNJI SLUČAJ. Kada dodijeliti više vrijednosti varijabli, one se moraju odvojiti dvotočkom : znak. Nema prostora oko simbola jednak = .

Varijable se mogu svrstati u dvije glavne kategorije, varijable okoline i varijable ljuske.

Promjene okoliša su varijable koje su dostupne na cijelom sustavu i nasljeđuju ih svi rođeni dječji procesi i ljuske.

Promjenjive ljuske su varijable koje se primjenjuju samo na trenutnu instancu ljuske. Svaka ljuska poput zsh i bash ima svoj skup unutarnjih varijabli ljuske.

Na raspolaganju je nekoliko naredbi koje omogućuju popis i postavljanje varijabli okruženja u Linuxu:

  • env - Naredba vam omogućuje pokretanje drugog programa u prilagođenom okruženju bez izmjene trenutačnog. Ako se koristi bez argumenta, ispisat će popis trenutnih varijabli okruženja. printenv - Naredba ispisuje sve ili navedene varijable okoline. set - naredba postavlja ili ukida varijable ljuske. Ako se koristi bez argumenta, ispisat će popis svih varijabli, uključujući varijable okoline i ljuske i funkcije ljuske. unset - Naredba briše varijable ljuske i okoline. export - Naredba postavlja varijable okoline.

Navedi varijable okoline

Printenv se najviše koristi naredbom za prikaz varijabli okoline. Ako se ime varijable prenese kao argument naredbi, prikazuje se samo vrijednost te varijable. Ako nije naveden nijedan argument, printenv ispisuje popis svih varijabli okoline, po jednu varijablu po retku.

Na primjer, za prikaz vrijednosti varijable okoline HOME pokrenuli biste:

printenv HOME

Izlaz će ispisati putanju trenutno prijavljenog korisnika:

/home/linuxize

Također možete prenijeti više argumenata naredbi printenv :

printenv LANG PWD

en_US /home/linuxize

printenv

Izlaz će izgledati ovako:

LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35;… LESSCLOSE=/usr/bin/lesspipe %s %s LANG=en_US S_COLORS=auto XDG_SESSION_ID=5 USER=linuxize PWD=/home/linuxize HOME=/home/linuxize SSH_CLIENT=192.168.121.1 34422 22 XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop SSH_TTY=/dev/pts/0 MAIL=/var/mail/linuxize TERM=xterm-256color SHELL=/bin/bash SHLVL=1 LANGUAGE=en_US: LOGNAME=linuxize XDG_RUNTIME_DIR=/run/user/1000 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin LESSOPEN=| /usr/bin/lesspipe %s _=/usr/bin/printenv

Ispod su neke od najčešćih varijabli okoline:

  • USER - trenutačno prijavljeni korisnik. HOME - Domaći direktorij trenutnog korisnika. EDITOR - Zadani uređivač datoteka koji se koristi. Ovo je uređivač koji će se koristiti prilikom tipkanja edit u vašem terminalu. SHELL - Put ljuske trenutnog korisnika, kao što su bash ili zsh. LOGNAME - Ime trenutnog korisnika. PATH - Popis direktorija koje treba pretraživati ​​prilikom izvršavanja naredbi. Kad pokrenete naredbu, sustav će pretraživati ​​te direktorije ovim redoslijedom i upotrijebiti prvi pronađeni izvršni program. LANG - Trenutačne postavke jezika. TERM - trenutna emulacija terminala. MAIL - Lokacija mjesta pohrane trenutnog korisnika.

Naredbe printenv i env ispisuju samo varijable okoline. Ako želite dobiti popis svih varijabli, uključujući okruženje, ljuske i varijable i funkcije ljuske, možete koristiti naredbu set :

set

BASH=/bin/bash BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extglob:extquote:force_fignore:histappend:interactive_comments:login_shell:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=()

Naredba će prikazati veliki popis svih varijabli tako da vjerojatno želite izlaziti u naredbu less .

set | less

Možete koristiti i naredbu eho za ispis varijable ljuske. Na primjer, za ispis vrijednosti BASH_VERSION varijable biste pokrenuli:

echo $BASH_VERSION

4.4.19(1)-release

Postavljanje varijabli okruženja

Da bismo bolje prikazali razliku između varijabli Shell i Environment počet ćemo s postavljanjem Shell Variables, a zatim prijeđemo na varijable Environment.

Da biste stvorili novu varijablu ljuske s imenom MY_VAR i vrijednošću Linuxize jednostavno upišite:

MY_VAR='Linuxize'

Možete provjeriti je li varijabla postavljena pomoću echo $MY_VAR filtriranja izlaza naredbe set s set | grep MY_VAR grep set | grep MY_VAR set | grep MY_VAR :

echo $MY_VAR

Linuxize

Upotrijebite naredbu printenv da provjerite je li ova varijabla varijabla okoline ili ne:

printenv MY_VAR

Izlaz će biti prazan što nam govori da varijabla nije varijabla okoline.

Možete pokušati ispisati i varijablu u potkoljenici i dobit ćete prazan izlaz.

bash -c 'echo $MY_VAR'

Naredba export koristi se za postavljanje varijabli okruženja.

Da biste stvorili varijablu okruženja, jednostavno izvozite varijablu ljuske kao varijablu okruženja:

export MY_VAR

To možete provjeriti pokretanjem:

printenv MY_VAR

Linuxize

bash -c 'echo $MY_VAR'

Linuxize

Možete postaviti i varijable okoline u jednom retku:

export MY_NEW_VAR="My New Var"

Varijable okoliša stvorene na ovaj način dostupne su samo u trenutnoj sesiji. Ako otvorite novu ljusku ili ako se odjavite, sve će se varijable izgubiti.

Trajne varijable okoline

Da bi varijable okoline bile trajne, morate definirati te varijable u bash konfiguracijskim datotekama. U većini distribucija Linuxa kada pokrenete novu sesiju, varijable okoline čitaju se iz sljedećih datoteka:

  • /etc/environment - Upotrijebite ovu datoteku za postavljanje varijabli okruženja na cijelom sustavu. Varijable u ovoj datoteci postavljene su u sljedećem formatu:

    FOO=bar VAR_TEST="Test Var"

    /etc/profile - Varijable postavljene u ovoj datoteci učitavaju se kad god se unese bash shell za prijavu. Pri proglašavanju varijabli okruženja u ovoj datoteci trebate koristiti naredbu export :

    export JAVA_HOME="/path/to/java/home" export PATH=$PATH:$JAVA_HOME/bin

    Konfiguracijske datoteke specifične za korisnika. Na primjer, ako koristite Bash, možete proglasiti varijable u ~/.bashrc :

    export PATH="$HOME/bin:$PATH"

Za učitavanje novih varijabli okruženja u trenutnu sesiju ljuske upotrijebite naredbu source :

source ~/.bashrc

Zaključak

U ovom smo vodiču pokazali kako postaviti i navesti varijable okoline i ljuske.

Slobodno ostavite komentar ako imate bilo kakvih pitanja.

terminal