歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux問題解決

linux環境變量(一)

初次學習lliux對環境變量的知識甚是不解決,特花費一個上午的時間總結了一下,可以說是全面!如各位有更加詳細的見解不妨告知! 定制環境變量

環境變量是和Shell緊密相關的,用戶登錄系統後就啟動了一個Shell。對於Linux來說一般是bash,但也可以重新設定或切換到其它的 Shell。環境變量是通過Shell命令來設置的,設置好的環境變量又可以被所有當前用戶所運行的程序所使用。對於bash這個Shell程序來說,可 以通過變量名來訪問相應的環境變量,通過export來設置環境變量。下面通過幾個實例來說明。

1. 顯示環境變量HOME

$ echo $HOME

/home/terry

2. 設置一個新的環境變量WELCOME

$ export WELCOME="Hello!"

$ echo $WELCOME

Hello!

3. 使用env命令顯示所有的環境變量

$ env

HOSTNAME=terry.mykms.org

PVM_RSH=/usr/bin/rsh

SHELL=/bin/bash

TERM=xterm

HISTSIZE=1000

...

4. 使用set命令顯示所有本地定義的Shell變量

$ set

BASH=/bin/bash

BASH_VERSINFO=([0]="2"[1]="05b"[2]="0"[3]="1"[4]="release"[5]="i386-redhat-linux-gnu")

BASH_VERSION='2.05b.0(1)-release'

COLORS=/etc/DIR_COLORS.xterm

COLUMNS=80

DIRSTACK=()

DISPLAY=:0.0

...

5. 使用unset命令來清除環境變量

set可以設置某個環境變量的值。清除環境變量的值用unset命令。如果未指定值,則該變量值將被設為NULL。示例如下:

$ export TEST="Test..." #增加一個環境變量TEST

$ env|grep TEST #此命令有輸入,證明環境變量TEST已經存在了

TEST=Test...

$ unset $TEST #刪除環境變量TEST

$ env|grep TEST #此命令沒有輸出,證明環境變量TEST已經存在了

6. 使用readonly命令設置只讀變量

如果使用了readonly命令的話,變量就不可以被修改或清除了。示例如下:

$ export TEST="Test..." #增加一個環境變量TEST

$ readonly TEST #將環境變量TEST設為只讀

$ unset TEST #會發現此變量不能被刪除

-bash: unset: TEST: cannot unset: readonly variable

$ TEST="New" #會發現此也變量不能被修改

-bash: TEST: readonly variable
etc/profile對整個系統有效.
確定你使用的是bash

添加
export LANG=zh_CN.GBK
export LC_ALL=zh_CN.GBK
export XMODIFIERS=@im=Chinput
csh的配置可能是
setenv LANG zh_CN.GBK
setenv LC_ALL zh_CN.GBK
setenv XMODIFIERS @im=Chinput

你也可以建立~/.bash_profile文件,在文件中設置
相關的文件還有.bash_logout .bash_login
比如我的.bash_logout指定
clear
每次退出是自動清屏

如何設置Shell環境變量?

Shell 設置 添加 去除 顯示當前值 注解 sh NAME=value1
export NAME
NAME=value2:$NAME unset NAME set(internal)或者env(exported) 如果需要子進程也看到該環境變量,需要使用export ksh NAME=value1
export NAME
NAME=value2:$NAME unset NAME set(internal)或者env(exported) 如果需要子進程也看到該環境變量,需要使用export csh setenv NAME value1 setenv NAME value2:$NAME unsetenv NAME set 不需要使用export bash NAME=value1 NAME=value2:$NAME unset NAME set或者env 如果需要子進程也看到該環境變量,需要使用export
Copyright © Linux教程網 All Rights Reserved