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.
便宜的香港vps多少钱?现在国外VPS主机的价格已经很便宜了,美国VPS主机最低一个月只要十几元,但同样免备案的香港VPS价格贵不贵呢?或者说便宜的香港VPS多少钱?香港vps主机价格要比美国机房的贵一些,但比国内的又便宜不少,所以目前情况是同等配置下,美国VPS比香港的便宜,香港VPS比国内(指大陆地区)的便宜。目前,最便宜香港vps低至3元/首月、18元/月起,今天云服务器网(www.yunt...
部落分享过多次G-core(gcorelabs)的产品及评测信息,以VPS主机为主,距离上一次分享商家的独立服务器还在2年多前,本月初商家针对迈阿密机房限定E5-2623v4 CPU的独立服务器推出75折优惠码,活动将在9月30日到期,这里再分享下。G-core(gcorelabs)是一家总部位于卢森堡的国外主机商,主要提供基于KVM架构的VPS主机和独立服务器租用等,数据中心包括俄罗斯、美国、日...
LayerStack(成立于2017年),当前正在9折促销旗下的云服务器,LayerStack的云服务器采用第 3 代 AMD EPYC™ (霄龙) 处理器,DDR4内存和企业级 PCIe Gen 4 NVMe SSD。数据中心可选中国香港、日本、新加坡和洛杉矶!其中中国香港、日本和新加坡分为国际线路和CN2线路,如果选择CN2线路,价格每月要+3.2美元,付款支持paypal,支付宝,信用卡等!...