Linux环境变量总结

标签: Linux 环境变量
7人阅读 评论(0) 收藏 举报
分类:

Linux是一个多用户的操作系统。多用户意味着每个用户登录系统后,都有自己专用的运行环境。而这个环境是由一组变量所定义,这组变量被称为环境变量。用户可以对自己的环境变量进行修改以达到对环境的要求。

设置环境变量的方法

  • 对所有用户生效的永久性变量
    这类变量对系统内的所有用户都生效,所有用户都可以使用这类变量。作用范围是整个系统。
`此文件只在root下才能修改。`
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib

添加完成后新的环境变量不会立即生效,立即生效需要运行 source /etc/profile ,否则只能在下次重进此用户时才能生效。


  • 对单一用户生效的永久性变量
    在用户目录下的.bash_profile 文件中添加变量,该文件是隐藏文件,可使用ll -a查看:1522739176250.png
$ whoami 
rethink

$ vi /home/rethink/.bash_profile
export CLASSPATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib 

$ source /home/rethink/.bash_profile

在上图中用红框框住了两个文件:.bashrc.bash_profile ,原则上讲设置此类环境变量时在这两个文件任意一个里面添加都是可以的,这两个文件的区别为:.bash_profile是交互式login方式进入bash shell运行,.bashrc是交互式non-login方式进入bash shell运行。可以理解为.bash_profile文件只会在用户登录的时候读取一次,而.bashrc在每次打开终端进行一次新的会话时都会读取。


  • 临时有效的环境变量(只针对当前shell有效)
    此类环境变量只对当前的shell有效。当我们退出登录或者关闭终端再重新打开时,这个环境变量就会消失。是临时的。

设置方法:命令行下直接使用[export 变量名=变量值] 定义变量。

$ export NAME="rethink"
$ echo $NAME
rethink

设置环境变量常用命令

  • echo
    用于打印显示环境变量,如:echo $NAME

  • export
    用于设置新的环境变量,如:export NAME='rethink'

  • 更新环境变量
    更新环境变量直接重新赋值即可:NAME='test'

  • env
    显示当前用户的变量;

  • set
    显示当前shel的l变量,shell变量包含用户变量;

  • unset
    删除一个环境变量,如:unset NAME

  • readonly
    设置环境变量只读,如:readonly NAME ,只读变量unset无效;

常用环境变量

  • PATH
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

路径之间用冒号分隔,这些路径都是一些可以找到可执行程序的目录列表。当我们输入一个指令时,shell会先检查命令是否是系统内部命令,如果不是则会再去检查此命令是否是一个应用程序,shell会试着从PATH中寻找这些应用程序。如果shell在这些路径目录里没有找到可执行文件,就会报错;若找到,系统将调用执行应用程序。通过设置PATH ,可以让我们运行程序或指令更加方便。

将某个目录路径加入到PATH中,可以这样写:

$ pwd
/root/docker/httpd
$ export PATH=$PATH:$PWD
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/docker/httpd
`可以看到在PATH后面已经加上了我们当前所处目录的路径`
  • HOME
    用户的主工作目录,即为用户登录到Linux系统中时的默认目录。
$ whoami
rethink
$ echo $HOME
/home/rethink
  • HISTSIZE
    保存历史命令的条数。我们输入的指令都会被系统保存下来,这个环境变量记录的就是保持指令的条数。一般为1000。
$ echo $HISTSIZE
1000
$ HISTSIZE=1001
$ echo $HISTSIZE
1001

历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取我们可以通过history命令来查看。 可以使用符号 ! 执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2

$ history 5
   59  ls
   60  who
   61  history | head -n 5
   62  who am i
   63  history 5
$ !62
who am i
root     pts/0        2018-04-04 11:00 (101.81.92.18)
  • LOGNAME
    当前用户登录名。
$ echo $LOGNAME
rethink
  • HOSTNAME
    主机名称。
$ echo $HOSTNAME
JDu4e00u53f7
  • SHELL
    当前用户使用的shell种类。
$ echo $SHELL
/bin/bash

to be continued…

查看评论

一天一linux命令(8) export 环境变量

export 功能说明:设置或显示环境变量。 语  法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新...
  • fuxingdaima
  • fuxingdaima
  • 2013-04-02 12:13:51
  • 653

linux shell环境变量总结

用户登录时就是打开一个shell进程,其会加载profile和bashrc文件中的变量,其变量就是环境变量,是所有其子进程全局变量。 所以每次登陆一个终端都是重新打开一个shell进程,会重新加载环...
  • xiaoaide01
  • xiaoaide01
  • 2016-05-28 13:52:51
  • 1361

Linux 环境变量设置

  • 2011年07月29日 07:14
  • 6KB
  • 下载

Linux文件与目录管理总结

第七章总结 Linux文件与目录管理包括:在不同的目录间切换、创建与删除目录、创建与删除文件,还有查找文件、查看文件内容等。 相对路径与绝对路径 绝对路径:路径的写法一定由根目录/写起,如/us...
  • yzhang6_10
  • yzhang6_10
  • 2016-06-25 21:05:14
  • 2666

LD_LIBRARY_PATH环境变量设置及Linux动态库查找方法

转自:http://james23dier.iteye.com/blog/763274   略有改动 在linux下的编程,毫无疑问的迟早都要用到LD_LIBRARY_PATH这个环境变量,...
  • FoxBryant
  • FoxBryant
  • 2016-11-29 10:39:09
  • 3333

第一节:开发工具介绍及环境变量配置及详解(个人总结详解篇)

Java简介(真的是很简单的介绍,想看更详细的请参阅其他相关文档) 首先啥也不说,先认识一个人:(James Gosling)詹姆斯.高斯林 ,俗称高司令(哈哈,这么说存粹是好记,另外姓詹姆斯的人是...
  • fengbird
  • fengbird
  • 2016-09-25 23:58:50
  • 649

Linux环境变量及其设置

简介环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或多个应用程序将使用到的信息。Linux是一个多用户的操作系统,每个用户登录系统时都会有一个专用的运行环境,通常情况下每个用户的默认的环境...
  • LLZK_
  • LLZK_
  • 2016-12-22 17:33:20
  • 11460

Linux环境-环境变量、时间和日期

环境变量 环境由一组格式为“名字=值“的字符串组成 在C语言程序中可以通过putenv和getenv函数来访问和设置环境变量, 在environ变量中保存有程序的所有环境变量,它以null结...
  • shenpengdyx
  • shenpengdyx
  • 2017-02-09 13:45:01
  • 637

linux 加载环境变量

1 +++++在主目录下添加环境变量的路径++++ 方法一: 1>在主目录下vi .profile 2>添加要添加的环境变量的路径 如: 3> 设置完成后还要sourc...
  • u010981277
  • u010981277
  • 2013-12-11 10:03:07
  • 1946

linux环境变量显示、添加、删除

1. 显示环境变量HOME  $ echo $HOME /home/terry  2. 设置一个新的环境变量WELCOME  $ export WELCOME="Hello!" $ ec...
  • origin_lee
  • origin_lee
  • 2014-12-27 11:40:13
  • 1598
    个人资料
    等级:
    访问量: 151
    积分: 150
    排名: 111万+
    文章存档