Linux 用戶環(huán)境變量可以幫助你找到你需要的命令,無須了解系統(tǒng)如何配置的細節(jié)而完成大量工作。而這些設(shè)置來自哪里和如何被修改它們是另一個話題。
-- Sandra Henry-stocker(作者)
在 Linux 系統(tǒng)上的用戶賬戶配置以多種方法簡化了系統(tǒng)的使用。你可以運行命令,而不需要知道它們的位置。你可以重新使用先前運行的命令,而不用發(fā)愁系統(tǒng)是如何追蹤到它們的。你可以查看你的電子郵件,查看手冊頁,并容易地回到你的家目錄,而不用管你在文件系統(tǒng)中身在何方。并且,當需要的時候,你可以調(diào)整你的賬戶設(shè)置,以便其更符合你喜歡的方式。
Linux 環(huán)境設(shè)置來自一系列的文件:一些是系統(tǒng)范圍(意味著它們影響所有用戶賬戶),一些是處于你的家目錄中的配置文件里。系統(tǒng)范圍的設(shè)置在你登錄時生效,而本地設(shè)置在其后生效,所以,你在你賬戶中作出的更改將覆蓋系統(tǒng)范圍設(shè)置。對于 bash 用戶,這些文件包含這些系統(tǒng)文件:
/etc/environment/etc/bash.bashrc/etc/profile
以及一些本地文件:
~/.bashrc~/.profile # 如果有 ~/.bash_profile 或 ~/.bash_login 就不會讀此文件~/.bash_profile~/.bash_login
你可以修改本地存在的四個文件的任何一個,因為它們處于你的家目錄,并且它們是屬于你的。
查看你的 Linux 環(huán)境設(shè)置
為查看你的環(huán)境設(shè)置,使用 env 命令。你的輸出將可能與這相似:
$ envLS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.spf=00;36:SSH_CONNECTION=192.168.0.21 34975 192.168.0.11 22LESSCLOSE=/usr/bin/lesspipe %s %sLANG=en_US.UTF-8OLDPWD=/home/shsXDG_SESSION_ID=2253USER=shsPWD=/home/shsHOME=/home/shsSSH_CLIENT=192.168.0.21 34975 22XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktopSSH_TTY=/dev/pts/0MAIL=/var/mail/shsTERM=xtermSHELL=/bin/bashSHLVL=1LOGNAME=shsDBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/busXDG_RUNTIME_DIR=/run/user/1000PATH=/home/shs/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/binLESSOPEN=| /usr/bin/lesspipe %s_=/usr/bin/env
雖然你可能會看到大量的輸出,上面顯示的第一大部分用于在命令行上使用顏色標識各種文件類型。當你看到類似 *.tar=01;31: 這樣的東西,這告訴你 tar 文件將以紅色顯示在文件列表中,然而 *.jpg=01;35: 告訴你 jpg 文件將以紫色顯現(xiàn)出來。這些顏色旨在使它易于從一個文件列表中分辨出某些文件。你可以在《 在 Linux 命令行中自定義你的顏色 》處學(xué)習更多關(guān)于這些顏色的定義,和如何自定義它們。
當你更喜歡一種不加裝飾的顯示時,一種關(guān)閉顏色顯示的簡單方法是使用如下命令:
$ ls -l --color=never
這個命令可以簡單地轉(zhuǎn)換到一個別名:
$ alias ll2='ls -l --color=never'
你也可以使用 echo 命令來單獨地顯現(xiàn)某個設(shè)置。在這個命令中,我們顯示在歷史緩存區(qū)中將被記憶命令的數(shù)量:
$ echo $HISTSIZE1000
如果你已經(jīng)移動到某個位置,你在文件系統(tǒng)中的最后位置會被記在這里:
PWD=/home/shsOLDPWD=/tmp
作出更改
你可以使用一個像這樣的命令更改環(huán)境設(shè)置,但是,如果你希望保持這個設(shè)置,在你的 ~/.bashrc 文件中添加一行代碼,例如 HISTSIZE=1234。
$ export HISTSIZE=1234
“export” 一個變量的本意是什么
導(dǎo)出一個環(huán)境變量可使設(shè)置用于你的 shell 和可能的子 shell。默認情況下,用戶定義的變量是本地的,并不被導(dǎo)出到新的進程,例如,子 shell 和腳本。export 命令使得環(huán)境變量可用在子進程中發(fā)揮功用。
添加和移除變量
你可以很容易地在命令行和子 shell 上創(chuàng)建新的變量,并使它們可用。然而,當你登出并再次回來時這些變量將消失,除非你也將它們添加到 ~/.bashrc 或一個類似的文件中。
$ export MSG='Hello, World!'
如果你需要,你可以使用 unset 命令來消除一個變量:
$ unset MSG
如果變量是局部定義的,你可以通過加載你的啟動文件來簡單地將其設(shè)置回來。例如:
$ echo $MSGHello, World!$ unset $MSG$ echo $MSG$ . ~/.bashrc$ echo $MSGHello, World!
小結(jié)
用戶賬戶是用一組恰當?shù)膯游募O(shè)立的,創(chuàng)建了一個有用的用戶環(huán)境,而個人用戶和系統(tǒng)管理員都可以通過編輯他們的個人設(shè)置文件(對于用戶)或很多來自設(shè)置起源的文件(對于系統(tǒng)管理員)來更改默認設(shè)置。
via: https://www.networkworld.com/article/3385516/how-to-manage-your-linux-environment.html