Linux环境变量设置总结

Linux环境变量设置总结
1、引言
在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“command not found”的提示内容。

如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了。

这涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分。

本文基于RedHat9.0,详细讲解了环境变量定制的问题。

2、变量简介
Linux是一个多用户的操作系统。

每个用户登录系统后,都会有一个专用的运行环境。

通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。

用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。

3、常见的环境变量
$PATH:决定了shell将到哪些目录中寻找命令或程序
$HOME:当前用户主目录
$MAIL:是指当前用户的邮件存放目录。

$SHELL:是指当前用户用的是哪种Shell。

$HISTSIZE:是指保存历史命令记录的条数
$LOGNAME:是指当前用户的登录名。

$HOSTNAME:是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。

$LANG/LANGUGE:是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。

$PS1:是基本提示符,对于root用户是#,对于普通用户是$,也可以使用一些更复杂的值。

$PS2:是附属提示符,默认是“>”。

可以通过修改此环境变量来修改当前的命令符,比如下列命令会将提示符修改成字符串“Hello,My NewPrompt:)”。

#PS1="Hello,My NewPrompt:)"
$IFS:输入域分隔符。

当shell读取输入时,用来分隔单词的一组字符,它们通常是空格、制表符和换行符。

$0:shell脚本的名字。

例如,在我的Linux系统中:
$echo$0
/bin/bash
$#:传递给脚本的参数个数。

$$:shell脚本的进程号,脚本程序通常会用它生成一个唯一的临时文件,如/tmp/tmfile_$$例如,在我的Linux系统中:
$echo$$
31038#表示当前shell进程号为31038
4、export命令
export命令将作为他参数的变量导入到子shell中,并使之在子shell中有效。

export命令把自己的参数创建为一个环境变量,而这个环境变量可以被其他脚本和当前程序调用的程序看见。

4.1实验导出变量
(1)我们先列出脚本程序export2
#!/bin/sh
echo"$foo"
echo"$bar"
(2)然后是脚本export1。

在这个脚本的结尾,我们调用export2:
#!/bin/sh
foo="The first meta-syntactic variable"
export bar="The second meta-syntactic variable"
export2
运行这个脚本,将得到如下的输出:
$export1
#这是个空格,是因为变量foo在export2中不可用,所以$foo被复制为空
The second meta-syntactic variable
$
4.2设置一个新的环境变量WELCOME
$export WELCOME="Hello!"
$echo$WELCOME
Hello!
5、定制环境变量
环境变量是和Shell紧密相关的,用户登录系统后就启动了一个Shell。

对于Linux来说一般是bash,但也可以重新设定或切换到其它的Shell。

根据发行版本的情况,bash有两个基本的系统级配置文件:/etc/bashrc和/etc/profile。

这些配置文件包含两组不同的变量:shell变量和环境变量。

前者只是在特定的shell中固定(如bash),后者在不同shell中固定。

很明显,shell变量是局部的,而环境变量是全局的。

环境变量是通过Shell命令来设置的,设置好的环境变量又可以被所有当前用户所运行的程序所使用。

对于bash这个Shell程序来说,可以通过变量名来访问相应的环境变量,通过export来设置环境变量。

下面通过几个实例来说明。

5.1使用命令echo显示环境变量
#本例使用echo显示常见的变量HOME
$echo$HOME
/home/lqm
5.2设置一个新的环境变量
$export HELLO=“Hello!”
$echo$HELLO
Hello!
5.3使用env命令显示所有的环境变量
$env
SSH_AGENT_PID=1875
HOSTNAME=lqm
SHELL=/bin/bash
TERM=xterm
HISTSIZE=1000
……
5.4使用set命令显示所有本地定义的Shell变量
$set
BASH=/bin/bash
……
5.5使用unset命令来清除环境变量
$export TEST=“test”#增加一个环境变量TEST
$env|grep TEST#此命令有输出,证明环境变量TEST已经存在了
TEST=test
$unset$TEST#删除环境变量TEST
$env|grep TEST#此命令无输出,证明环境变量TEST已经存在了
5.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
5.7用C程序来访问和设置环境变量
对于C程序的用户来说,可以使用下列三个函数来设置或访问一个环境变量。

getenv()访问一个环境变量。

输入参数是需要访问的变量名字,返回值是一个字符串。

如果所访问的环境变量不存在,则会返回NULL。

setenv()在程序里面设置某个环境变量的函数。

unsetenv()清除某个特定的环境变量的函数。

另外,还有一个指针变量environ,它指向的是包含所有的环境变量的一个列表。

下面的程序可以打印出当前运行环境里面的所有环境变量:
#include<stdio.h>
extern char**environ;
int main()
{
char**var;
for(var=environ;*var!=NULL;++var)
printf("%s\n",*var);
return0;
}
5.8通过修改环境变量定义文件来修改环境变量。

需要注意的是,一般情况下,这仅仅对于普通用户适用,避免修改根用户的环境定义文件,因为那样可能会造成潜在的危险。

$vi/etc/bashrc#修改shell变量
$vi/etc/profile#修改环境变量定义文件
然后编辑你的PATH声明,其格式为:
PATH=$PATH:<PATH1>:<PATH2>:<PATH3>:------:<PATH N>
你可以自己加上指定的路径,中间用冒号隔开。

环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$source.bash_profile
需要注意的是,最好不要把当前路径“./”放到PATH里,这样可能会受到意想不到的攻击。

完成后,可以通过$echo$PATH查看当前的搜索路径。

这样定制后,就可以避免频繁的启动位于shell搜索的路径之外的程序了。

合集下载

Linux终端命令之环境变量设置和使用

Linux终端命令之环境变量设置和使用

Linux终端命令之环境变量设置和使用环境变量在Linux系统中起着至关重要的作用。

它们是一组动态的值,用于指定系统或用户当前操作环境中的配置参数。

通过正确地设置和使用环境变量,我们可以使操作系统和各种应用程序能够正常工作和相互配合。

本文将介绍Linux终端命令中的环境变量设置和使用方法。

一、环境变量设置在Linux终端中,我们可以通过export命令来设置环境变量。

它的语法如下:```export 变量名=变量值```例如,要设置一个名为PATH的环境变量,并将其值设置为/usr/local/bin:/usr/bin:/bin,我们可以输入以下命令:```export PATH=/usr/local/bin:/usr/bin:/bin```此时,PATH环境变量的值就被成功设置为了/usr/local/bin:/usr/bin:/bin。

除了使用export命令,我们还可以将环境变量的设置写入到用户的配置文件中,使其成为永久的配置。

在大多数Linux系统中,用户的配置文件为.bashrc或者.bash_profile。

我们可以使用文本编辑器打开这个文件,并在其中添加我们需要设置的环境变量。

例如,将上述设置PATH环境变量的命令添加到.bashrc文件中:```export PATH=/usr/local/bin:/usr/bin:/bin```保存并退出文件后,重新打开一个终端窗口,即可使环境变量生效。

二、环境变量的查看和使用在Linux终端中,我们可以使用echo命令来查看环境变量的值。

它的语法如下:```echo $变量名```例如,要查看PATH环境变量的值,我们可以输入以下命令:```echo $PATH```系统将会输出PATH环境变量的值,即/usr/local/bin:/usr/bin:/bin。

环境变量的值可以作为命令的参数来使用。

例如,我们可以使用$PATH来代表PATH环境变量的值,然后在命令中直接引用它。

Linux命令行技巧如何在命令行中进行系统环境变量配置

Linux命令行技巧如何在命令行中进行系统环境变量配置

Linux命令行技巧如何在命令行中进行系统环境变量配置Linux命令行技巧:如何在命令行中进行系统环境变量配置在Linux系统中,环境变量是一种非常重要的概念。

它们定义了系统进程和用户会话的工作环境。

在命令行界面下,我们可以使用一些技巧来进行系统环境变量配置。

本文将介绍几种常用的方法和技巧,帮助您更好地管理和配置Linux系统环境变量。

1. 查看环境变量要查看系统中已定义的环境变量,可以使用echo命令加上$符号和变量名。

例如,```$ echo $PATH```上述命令会显示当前用户的PATH环境变量。

通过这种方式,您可以查看并了解系统中已存在的环境变量。

2. 导出新的环境变量要在命令行中导出新的环境变量,可以使用export命令。

下面是一个示例:```$ export MYVAR="Hello World"```上述命令将定义一个名为MYVAR的环境变量,并将其值设置为"Hello World"。

您可以根据需要自行修改变量名和值。

3. 永久配置环境变量如果希望在每次登录时都自动加载环境变量,可以将其添加到相关的配置文件中。

在大多数Linux发行版中,可以使用以下文件进行配置:- 对于bash shell,可以编辑~/.bashrc文件。

- 对于zsh shell,可以编辑~/.zshrc文件。

- 对于全系统范围的配置,可以编辑/etc/environment文件。

在这些文件中,您可以使用export命令将环境变量添加到文件末尾,类似于以下示例:```export MYVAR="Hello World"```保存文件后,下次登录时,您的环境变量将自动加载。

4. 修改已存在的环境变量要修改已存在的环境变量,可以通过在定义时重新赋值的方式进行。

例如,要将PATH环境变量添加新的路径:```$ export PATH=$PATH:/path/to/new/directory```上述命令会将新路径添加到现有的PATH环境变量中。

Linux命令行中的环境变量设置和生效技巧

Linux命令行中的环境变量设置和生效技巧

Linux命令行中的环境变量设置和生效技巧在Linux系统中,环境变量是一种能够存储系统配置信息的变量,它们对于系统和应用程序的正常运行至关重要。

通过设置和生效环境变量,我们可以为系统和应用程序提供所需的路径、参数和其他配置信息。

本文将介绍Linux命令行中的环境变量设置和生效的技巧,帮助你更好地理解和应用环境变量。

一、环境变量的基本概念在Linux系统中,每个进程都有自己的环境变量集合。

环境变量由一对键值对组成,键值对以等号("=")分隔。

例如,PATH=/usr/bin表示将/usr/bin目录添加到可执行文件的搜索路径中。

通过使用这样的键值对,我们可以在系统中存储和传递各种配置信息。

二、环境变量的类型1. 全局环境变量全局环境变量对于所有的用户和进程都是可见的。

它们通常在系统启动时由系统管理员进行设置,并在整个系统生命周期内生效。

2. 用户环境变量用户环境变量只对特定用户可见,每个用户可以有自己的环境变量设置。

用户环境变量的存储位置通常是在用户的主目录下的隐藏文件中,例如~/.bashrc或~/.bash_profile。

三、设置环境变量1. 临时设置环境变量通过export命令可以临时设置环境变量并将其导出给其他进程使用。

例如,要将JAVA_HOME设置为/usr/lib/jvm/java-11,可以使用以下命令:export JAVA_HOME=/usr/lib/jvm/java-11这样,该环境变量将在当前终端会话中生效,并在此会话中的所有子进程中可见。

2. 永久设置用户环境变量要永久设置用户环境变量,可以编辑用户的配置文件,例如~/.bashrc或~/.bash_profile。

打开文件后,在其中添加类似以下的行: export JAVA_HOME=/usr/lib/jvm/java-11保存并关闭文件后,重新打开终端会话,设置的环境变量将生效。

3. 全局环境变量的设置全局环境变量是对所有用户和进程都可见的,因此只有系统管理员才能设置。

linux环境变量基本概念以及如何定制环境变量

linux环境变量基本概念以及如何定制环境变量
4、 在profile文件添加或修改的内容需要注销系统才能生效(如果不想主销系统,则可以直接用source命令)。
5、 重复定义变量怎样理解
经常出现的是对PATH变量的定义。
例如:在peofile文件默认对PATH变量都有设置PATH=XXXXXX,在以后可能在对PATH设置,一般都加在profile文件的最后PATH=······(打个比方)。而系统之中认定的PATH=·······XXXXXXXX,也就是说相同名字的环境变量,后写入的先起作用(通俗地讲)!!!!!!!!!!!!!
2、 常在/etc/profile文件中修改环境变量,在这里修改的内容是对所有用户起作用的。以下主要操作将在该文件中进行。
3、如何添加环境变量。
例如添加”NAME=liheng“ 。
在profile文件的最后添加如下内容export NAME=liheng
变量值liheng可以加引号也可以不加,效果一样。
$ export TEST="Test..." # 增加一个环境变量TEST
$ env|grep TEST # 此命令有输入,证明环境变量TEST已经存在了
TEST=Test...
$ unset $TEST # 删除环境变量TEST
$ env|grep TEST # 此命令没有输出,证明环境变量TEST已经不存在了
-bash: unset: TEST: cannot unset: readonly variable
$ TEST="New" # 会发现此时变量不能被修改
-bash: TEST: readonly variable
附加说明:
l etc/profile对整个系统有效

linux 设置lib环境变量的方法

linux 设置lib环境变量的方法

linux 设置lib环境变量的方法
Linux系统中,lib 环境变量指的是库文件的搜索路径。

在编译和运行程序的过程中,有时需要指定特定的库文件路径,这时就需要设置 lib 环境变量。

以下是设置 lib 环境变量的方法:
1. 通过命令行设置
可以在命令行中使用 export 命令设置 lib 环境变量,例如: export LD_LIBRARY_PATH=/usr/local/lib
这个命令设置了 lib 环境变量为 /usr/local/lib。

2. 在 .bashrc 文件中设置
可以在用户的 .bashrc 文件中添加以下代码:
export LD_LIBRARY_PATH=/usr/local/lib
这样每次打开终端时,都会自动设置 lib 环境变量为
/usr/local/lib。

3. 在 /etc/profile 文件中设置
可以在 /etc/profile 文件中添加以下代码:
export LD_LIBRARY_PATH=/usr/local/lib
这样在系统启动时,就会自动设置 lib 环境变量为
/usr/local/lib。

上述方法中,/usr/local/lib 可以替换为任何需要设置的库文件路径。

需要注意的是,在设置 lib 环境变量时,不要将原有的路径覆盖掉,而是将新路径添加到原有路径的后面,以避免出现无法加载原有库文件的问题。

Linux环境变量配置全攻略

Linux环境变量配置全攻略

Linux环境变量配置全攻略Linux环境变量配置在⾃定义安装软件的时候,经常需要配置环境变量,下⾯列举出各种对环境变量的配置⽅法。

下⾯所有例⼦的环境说明如下:系统:Ubuntu 14.0⽤户名:uusama需要配置MySQL环境变量路径:/home/uusama/mysql/binLinux读取环境变量读取环境变量的⽅法:export命令显⽰当前系统定义的所有环境变量echo $PATH命令输出当前的PATH环境变量的值这两个命令执⾏的效果如下uusama@ubuntu:~$ exportdeclare -x HOME="/home/uusama"declare -x LANG="en_US.UTF-8"declare -x LANGUAGE="en_US:"declare -x LESSCLOSE="/usr/bin/lesspipe %s %s"declare -x LESSOPEN="| /usr/bin/lesspipe %s"declare -x LOGNAME="uusama"declare -x MAIL="/var/mail/uusama"declare -x PATH="/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" declare -x SSH_TTY="/dev/pts/0"declare -x TERM="xterm"declare -x USER="uusama"uusama@ubuntu:~$ echo $PATH/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin其中PATH变量定义了运⾏命令的查找路径,以冒号:分割不同的路径,使⽤export定义的时候可加双引号也可不加。

环境变量的配置方法

环境变量的配置方法环境变量是操作系统中存储的一组特定值,用于指定应用程序的运行环境、系统配置和用户配置等。

在不同的操作系统中,环境变量的配置方法也有所不同。

本文将详细介绍环境变量的配置方法,并以Windows、Linux和Mac三个常见的操作系统为例。

1. Windows 环境变量的配置方法:-打开“控制面板”,选择“系统”或“系统和安全”。

-点击“系统”,再点击左侧的“高级系统设置”。

-在弹出的对话框中,点击“环境变量”按钮。

-在“系统变量”区域,点击“新建”按钮。

-在弹出的对话框中,输入变量名和变量值,然后点击“确定”。

-在“用户变量”区域,也可以添加用户级别的环境变量。

-点击“确定”关闭对话框,并重启计算机使变量生效。

2. Linux 环境变量的配置方法:- 在文件的末尾添加类似于“exportVARIABLE_NAME=variable_value”的行,定义环境变量。

- 在终端中运行“source .bashrc”或“source .profile”命令,使新的环境变量生效。

- 可以在/etc/environment文件中设置全局环境变量,但需要root 权限。

3. Mac 环境变量的配置方法:- 在文件的末尾添加类似于“exportVARIABLE_NAME=variable_value”的行,定义环境变量。

- 在终端中运行“source .bash_profile”或“source .bashrc”命令,使新的环境变量生效。

除了以上操作系统的配置方法外,还有一些其他的配置方式:- 几乎所有的操作系统都支持在命令行中使用“set”或“export”命令来设置临时环境变量。

- 在一些开发工具中,还可以通过图形界面来设置环境变量,如Eclipse、IntelliJ IDEA等。

- 在一些软件的安装过程中,会提示设置环境变量,如Java、Python等。

需要注意的是,设置环境变量时需要谨慎,避免设置错误引起系统或应用程序的异常。

Linux应用程序相关环境变量的设置

Linux应用程序相关环境变量的设置一、什么环境变量(linux下)环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序的运行环境信息。

Linux是一个多用户的操作系统。

每个用户登录系统后,都会有一个专用的运行环境。

通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。

用户可以对自己的应用程序运行环境进行定制,其方法就是修改相应的系统环境变量。

通过环境变量的设置,可以很容易的修改一个牵涉到一个或多个应用程序的运行环境信息。

二、常用的应用程序相关环境变量通常linux下,如果一个应用程序的安装路径不为/usr、/usr/local等系统默认的安装路径,则运行该应用程序时至少要指定环境变量PATH及LD_LIBRARY_PATH,来分别指定该应用程序命令的查找路径和共享库(动态链接库)的查找路径路径。

(这两个用环境变量设置的路径通常在在默认路径之前查找)除了常用的应用程序相关变量PATH及LD_LIBRARY_PATH,有些应用程序运行还需要一些特殊的环境变量。

如:Qte4需要环境变量QTEDIR;Java 需要环境变量JAVA_HOME和CLASSPATH 等。

总之,在应用程序运行是必须保证其要求的环境变量已经设置好。

三、设置环境变量3.1、用命令export设置环境变量linux提供了一个专门的命令:export来设置环境变量。

其使用方式如下:语法:export [-fnp][变量名称]=[变量设置值]说明:在shell中执行程序时,shell会提供一组环境变量。

export可一次新增,修改或删除多个环境变量,供后续执行的程序使用。

但export的效力仅及于该此登录操作,当当前shell关闭后export设置的环境变量也失去了效力。

参数:-f 代表[变量名称]中为函数名称。

-n 删除指定的变量。

变量实际上并未删除,只是不会输出到后续指令的执行环境中。

-p 列出所有的shell赋予程序的环境变量。

Linux设置和查看环境变量的方法命令是什么

Linux设置和查看环境变量的方法命令是什么Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

我们经常需要设置某些环境变量来是应用程序正常运行,本文整理了一些常用的与环境变量相关的命令,感兴趣的朋友可以参考下希望对你有所帮助方法步骤1. 显示环境变量HOME$ echo $HOME/home/redbooks2. 设置一个新的环境变量hello$ export HELLO="Hello!"$ echo $HELLOHello!3. 使用env命令显示所有的环境变量$ envHOSTNAME=PVM_RSH=/usr/bin/rshShell=/bin/bashTERM=xtermHISTSIZE=1000...4. 使用set命令显示所有本地定义的Shell变量$ setBASH=/bin/bashBASH_VERSINFO=([0]="2"[1]="05b"[2]="0"[3]="1"[4]="rele ase"[5]="i386-redhat-linux-gnu")BASH_VERSION='2.05b.0(1)-release'COLORS=/etc/DIR_COLORS.xtermCOLUMNS=80DIRSTACK=()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命令的话,变量就不可以被修改或清除了。

linux系统service的environment用法 -回复

linux系统service的environment用法-回复Linux 系统中的Service 是一种后台运行的程序或进程,它能在系统启动时自动加载并在后台持续运行。

Service 在Linux 系统中广泛应用于各种服务的管理,如网络服务、数据库服务、Web 服务器等。

Environment (环境变量)是Service 中的一个重要概念,通过配置环境变量,可以为Service 提供特定的运行环境和参数。

本文将详细讨论Linux 系统中Service 的Environment 的用法,并提供一些实际应用的例子。

一、什么是Environment(环境变量)Environment 是一组全局的、动态的、系统范围内的数据,用于定义操作系统的运行时环境。

Environment 包括了一系列的键值对,其中键是环境变量的名称,值是环境变量的内容。

在Linux 系统中,环境变量存储在一个叫做环境表(environment table)的数据结构中。

通过环境变量,Service 可以获取一些系统级别的配置信息,如路径、用户名、密码等,从而影响Service 的运行方式和行为。

环境变量可以在系统启动时自动加载,也可以在Service 的启动脚本或配置文件中手动设置。

二、设置Service 的Environment在Linux 系统中,Service 的Environment 可以通过以下几种方式进行设置:1. 在Service 的启动脚本(init script)中设置:在脚本中使用export 命令来定义环境变量。

例如:shellexport VARIABLE_NAME=value这样,在Service 启动时,定义的环境变量会被自动加载。

2. 在Service 的配置文件中设置:有些Service 的配置文件中专门有一个环境变量的区域,可以在其中设置需要的环境变量。

例如,Nginx 的配置文件(/etc/nginx/nginx.conf)中:shellenv VARIABLE_NAME=value;通过在配置文件中设置环境变量,可以在Service 启动时自动加载。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档