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.
弘速云怎么样?弘速云是创建于2021年的品牌,运营该品牌的公司HOSU LIMITED(中文名称弘速科技有限公司)公司成立于2021年国内公司注册于2019年。HOSU LIMITED主要从事出售香港vps、美国VPS、香港独立服务器、香港站群服务器等,目前在售VPS线路有CN2+BGP、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。可联系商家代安装iso系统,目前推出全场vps新开7折,...
企鹅小屋怎么样?企鹅小屋最近针对自己的美国cn2 gia套餐推出了2个优惠码:月付7折和年付6折,独享CPU,100%性能,三网回程CN2 GIA网络,100Mbps峰值带宽,用完优惠码1G内存套餐是年付240元,线路方面三网回程CN2 GIA。如果新购IP不能正常使用,请在开通时间60分钟内工单VPS技术部门更换正常IP;特价主机不支持退款。点击进入:企鹅小屋官网地址企鹅小屋优惠码:年付6折优惠...
云雀云(larkyun)当前主要运作国内线路的机器,最大提供1Gbps服务器,有云服务器(VDS)、也有独立服务器,对接国内、国外的效果都是相当靠谱的。此外,还有台湾hinet线路的动态云服务器和静态云服务器。当前,larkyun对广州移动二期正在搞优惠促销!官方网站:https://larkyun.top付款方式:支付宝、微信、USDT广移二期开售8折折扣码:56NZVE0YZN (试用于常州联...