linux环境变量设置--总结Linux environment variable settings
-- Summary
Linux environment variable settings -- Summary
1. Introduction
In the Linux system, if you download and install an application,it is likely that the name of "command not found" appears whentyping its name. It' s too tedious to find executable files everytime you go to the installation target folder. This involvessetting up the environment variable PATH, and the setting ofPATH is also an integral part of customizing the environmentvariables in linux. Based on RedHat 9, this paper gives adetailed explanation of the customization of environmentv ar i ab l e s.
2. Brief introduction of variables
Linux is a multi-user operating system. After each user loginsystem, there will be a dedicated running environment.Typically, the default environment for each user is the same,and the default environment is actually a set of definitionsof the environment variables. Users can customize theiroperating environment by modifying the corresponding systemenvironment variables.
3. Customizing environment variables
The environment variable is closely related to Shell, and aShell is started after the user logs into the system. ForLinux,
it is generally bash, but it can also be reset or switched toother Shell. According to the release version, bash has twobasic system level configuration files: /etc/bashrc and/etc/profile. These configuration files contain two differentsets of variables: shell variables and environment variables.The former is fixed only in a particular shell (such as bash) ,and the latter is fixed in different shell. It is obvious thatthe shell variable is local, and the environment variable isglobal. The environment variables are set by the Shell command,and the set environment variables can be used by all theprograms that the current user runs. For the bash Shell program,you can access the corresponding environment variables byvariable names, and set the environment variables throughexport. The following is illustrated by several examples.
3. 1 use command echo to display environment variables-----------------------------------------------------------
This example uses the echo # display common variable HOME$e c h o $HOM E
/home/l qm
-----------------------------------------------------------
---------------------
3.2 set a new environment variable
-----------------------------------------------------------
---------------------
$export HELLO= "Hello"!"
$echo $HELLO
Hello!
-----------------------------------------------------------
---------------------
3.3 use the env command to display all the environment variables-----------------------------------------------------------
---------------------
$env
S SH_AGENT_P I D=1875
HOSTNAME=lqm
SHELL=/bin/bash
TERM=xt erm
HISTSIZE=1000
. . . . . .
-----------------------------------------------------------
---------------------
3.4 use the set command to display all locally defined Shellv ar i ab l e s
-----------------------------------------------------------
---------------------
$set
BASH=/bin/bash
. . . . . .
-----------------------------------------------------------
---------------------
3.5 use the unset command to clear the environment variables-----------------------------------------------------------
---------------------
$export TEST= "test" # added an environment variable TEST$env grep TEST | # this command output, prove the environmentvariable TEST already exists
TEST=test
$unset $TEST # delete environment variable TEST
$env grep TEST | # this command without output, prove theenvironment variable TEST already exists
-----------------------------------------------------------
3.6 set read-only variables using the readonly commandIf the readonly command is used, the variables cannot bemodified or cleared. Examples are as follows:
-----------------------------------------------------------
---------------------
$export TEST= "Test. . . " # added an environment variable TEST$readonly TEST # set the environment variable TEST read-only.$unset TEST # will find this variable cannot be deleted-bash: unset: TEST: cannot unset: readonly variable
$TEST= "New" #will find this variable cannot be modified-bash: TEST: readonly variable
-----------------------------------------------------------
---------------------
3.7 use C programs to access and set environment variables
For users of C programs, you can use the following threefunctions to set up or access an environment variable.Getenv () access an environment variable. The input parameteris the name of the variable to be accessed, and the return valueis a string. If the access environment variable does not exist,it returns NULL.
Setenv () the function of setting up an environment variablein the program.
Unsetenv () a function that clears a particular environmentv ar i ab l e.
In addition, there is apointer variable, environ, which refersto a list containing all of the environment variables. Thefollowing program can print all the environment variables inthe current running environment:
-----------------------------------------------------------
---------------------
#include <stdio.h>
Extern char**environ;
Int main ()
{
Char**v ar;
For (VaR =environ; *var! =NULL; ++var)
P r i n t f ("%s \n", *v ar) ;
Return 0;
}
-----------------------------------------------------------
---------------------
3.8 modify the environment variable by modifying theenvironment variable definition file.
It is important to note that, in general, this is onlyapplicable to ordinary users, and avoid modifying the rootuser' s environment definition file, which may pose a potentialdanger.
-----------------------------------------------------------
---------------------
$cd # to users under the root directory
$ls -a # view all files, including hidden files
$vi.Bash_profile # modify environment variables definitionfile
-----------------------------------------------------------
---------------------
Then edit your PATH statement, which is formatted as:PATH=$PATH:<PATH 1>: <PATH 2>: <PATH 3>: : <PATH N>
You can add the specified path by itself, separated by colons.When the environment variable is changed, it will take effectwhen the user enters the next time. If you want to take effectimmediately, you can execute the following statement:$source.Bash_profile
Note that it is best not to the current path"/" in PATH, thismay be an unexpected attack. After completion, you can view thecurrent search path through $echo $PATH. With thiscustomization, you can avoid frequent programs starting fromthe path outside the shell search.
4 Summary
Through the above settings,
You can have a more convenient and effective environment toimprove your work efficiency.
博鳌云是一家以海外互联网基础业务为主的高新技术企业,运营全球高品质数据中心业务。自2008年开始为用户提供服务,距今11年,在国人商家中来说非常老牌。致力于为中国用户提供域名注册(国外接口)、免费虚拟主机、香港虚拟主机、VPS云主机和香港、台湾、马来西亚等地服务器租用服务,各类网络应用解決方案等领域的专业网络数据服务。商家支持支付宝、微信、银行转账等付款方式。目前香港有一款特价独立服务器正在促销,...
昨天有分享到"2021年Vultr新用户福利注册账户赠送50美元"文章,居然还有网友曾经没有注册过他家的账户,薅过他们家的羊毛。通过一阵折腾居然能注册到账户,但是对于如何开通云服务器稍微有点不对劲,对于新人来说确实有点疑惑。因为Vultr采用的是预付费充值方式,会在每月的一号扣费,当然我们账户需要存留余额或者我们采用自动扣费支付模式。把笔记中以前的文章推送给网友查看,他居然告诉我界面不同,看的不对...
Sharktech又称SK或者鲨鱼机房,是一家主打高防产品的国外商家,成立于2003年,提供的产品包括独立服务器租用、VPS云服务器等,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹等。之前我们经常分享商家提供的独立服务器产品,近期主机商针对云虚拟服务器(CVS)提供优惠码,优惠后XS套餐年付最低仅33.39美元起,支持使用支付宝、PayPal、信用卡等付款方式。下面以XS套餐为例,分享产品配...