Linux 环境变量简介

Linux 和 Windows 系统相似,在安装许多软件的时候是需要去配置环境变量。同样,在 Linux 里也是需要去配置相应的环境变量。而在 Linux 中的环境变量主要是系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是用户使用系统时加载的环境变量。

  • 系统级
    • /etc/profile文件:当用户登录时,操作系统为用户定制的用于登录到系统的每个用户的第一个文件,通常是调用/etc/bash.bashrc 文件。
    • /etc/environment文件:在登录时操作系统调用的第二个文件,在读取 profile 之前,系统用于设置环境文件的环境变量。
  • 用户级(文件主要是在/home目录下)
    • ~/.profile:每个用户都可以调用来输入自己使用的 shell 信息,不过在用户登录时,该文件只执行一次。
    • ~/.bashrc: 包含登录用户的专用 bash shell 的 bash 信息。也就是说每开一个 shell,该文件都会被读取一次。
  • 临时的
    • 针对当前 shell 的环境变量。

简单来说,环境变量就是指定一个目录,软件在运行的时候,相关程序会按照该目录来查找相关文件。

前面是从系统和用户级来划分环境变量。 若按照变量的生存周期来划分,那么变量就可以分为:

  • 永久的:需要修改配置文件,变量永久生效。
  • 临时的:使用 export 命令来声明就行,变量在关闭 shell 的时候失效。

若按照环境变量自身的信息来划分,则可以分为:

  • 当前 shell 进程私有用户自定义变量。此时变量只在当前 shell 中有效
  • shell 自身的內建变量
  • 从自定义变量导出的环境变量

变量的设置方法:

 /etc/profile 文件中添加变量(永久的)

用 vim 编辑器编辑 /etc/profile 文件来增加变量,将作用于 Linux 下所有用户,且具有永久性。(此方法谨慎使用!)

修改 ~/.profile 文件(对单一用户生效(永久的))

这种方法较为安全,可以把使用这些环境变量的权限控制到用户级别,主要是针对某一特定的用户,如果需要给某个用户权限使用这些环境变量,只需要修改其个人用户主目录下的 .profile 文件就可以了。

eg:编辑shiaynlou用户目录(/home/shiyanlou)下的 .profile,即 /home/shiyanlou/.profile 文件。

5.2.3 直接运行export命令定义环境变量(临时的)

在控制台中设置,不赞成这种方式,这种设置只对当前的 shell 起作用,换一个 shell 设置就无效了。 在 shell 的命令行下直接使用 [export 变量名=变量值] 来定义变量。

在每个用户的 home目录中有一个 Shell 每次启动时会默认执行一个配置脚本,以初始化环境,包括添加一些用户自定义环境变量等等。zsh 的配置文件是 .zshrc,相应 Bash 的配置文件为 .bashrc 。它们在 etc 下还都有一个或多个全局的配置文件,不过我们一般只修改用户目录下的配置文件。因此在退出当前 shell 后,临时的自定义环境变量不会在新打开的 shell 中出现。

添加一个自定义的变量

$ export shiyanlou="shiyanlou001"$ echo $shiyanlou

注:使用 echo 输出变量时需要在变量名前面加 $ 符号

$export shiyanlou="shiyanlou001"

$echo $shiyanlou

实验楼整理梳理。

原文地址:http://blog.51cto.com/2833481/2154921

时间: 2024-10-11 01:12:12

Linux 环境变量简介的相关文章

Linux环境变量及其配置实战

Linux环境变量及其设置 简介 环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或多个应用程序将使用到的信息.Linux是一个多用户的操作系统,每个用户登录系统时都会有一个专用的运行环境,通常情况下每个用户的默认的环境都是相同的.这个默认环境就是一组环境变量的定义.每个用户都可以通过修改环境变量的方式对自己的运行环境进行配置. 分类 根据环境变量的生命周期我们可以将其分为永久性变量和临时性变量,根据用户等级的不同又可以将其分为系统级变量和用户级变量.怎么分都无所谓,主要是对它的理解.

Linux环境变量的设置和查看方法

1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org ... 4. 使用set命令显示所有本地定义的Shell变量 $ set BASH=/bin/bash BASH_VERSINFO=([0]="2"[1

Linux环境变量的修改(永久,暂时)

Linux修改环境变量,很简单但很重要 一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1. 永久的:需要修改配置文件,变量永久生效. 2. 临时的:使用export命令行声明即可,变量在关闭shell时失效. 二.设置变量的三种方法 1. 在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”. 例如:编辑/etc/profile文件,添加CL

Linux 环境变量 $PATH

我们知道查阅文件属性的指令 ls 完整文件名为:/bin/ls(这是绝对路径),那为什么可以在任何地方执行/bin/ls 这个指令呢?  为什么在任何目录下输入 ls 就一定可以显示出一些讯息而不会说找不到该 /bin/ls 指令呢? 这是因为环境变量 PATH ! 当我们在执行一个指令的时候,比如ls,系统会依照 PATH 的每个 PATH 定义的目录下搜寻文件名为 ls 的可执行文件, 如果在 PATH 定义的目录中含有多个文件名为 ls 的可执行文件,那么先搜寻到的同名指令先被执行! ec

Linux环境变量PS1配置

1. 说明: 在Shell下,我们可以拥有更加色惨斑斓的提示行信息,这可以通过改变bash的$PS1环境变量还设置,如下面就是提示行的一种: [email protected]$ root用户的提示是这样的: user$host# 2.  提示行的转义字符: Java代码   序列         说明 \a            ASCII 响铃字符(也可以键入 \007) \d            "Wed Sep 06" 格式的日期 \e            ASCII 转义

Linux环境变量配置介绍及实战

一.环境变量文件介绍 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量.所以管理环境变量的文件也分为系统级和用户级的,下面贴一个网上找到的讲的比较明白的文件介绍(略作修改)[1]: 1.系统级:(1)/etc/profile:该文件是用户登录时,操作系统定制用户环境时使用的第一个文件,应用于登录到系统的每一个用户.该文件一般是调用/etc/bash.bashrc文件./etc/bash.bash

linux环境变量介绍

一 linux环境变量概念的重要性 最初用linux是为了学习机器人操作系统(ros),由于之前没有接触过linux,所以并不了解其中的一些关键概念,导致走了许多弯路,如在ros的安装过程中,没有理解安装教程中的1.6 环境变量建立中的指令的意义,所以导致有时在自己工作空间建立的包会有找不到的情况.因此,本文结合ros安装教程中的部分指令,重点介绍linux环境变量的概念及应用. 二 环境变量的概念 环境变量,就是描述环境的变量.环境就是与shell相关的会话和工作环境,变量就是可变的量. 三

Linux环境变量目录

学嵌入式的时候,神烦那些教程各种不收规矩,例如教你用超级登录,或者在你的根目录下建立各种文件或目录,还有环境变量各种乱设.而本文就是针对最后一个问题. 在Linux家目录下的.bashrc文件可以个性化各种环境变量,但是每个性化一个环境变量如果想要删除或修改挺苦恼的,受到Linux环境下各种点d文件夹的启发(.d)所以就有了.bashrc.d目录.至于各种配置文件,例如bashrc.profile等的区别,网上有很多详细的描述,这里就不赘述了. .bashrc.d目录的作用是,参考ubuntu下

Linux环境变量中PS1

Linux环境变量中PS1是很重要的环境变量: PS(Prompt Sign): 是指命令提示符,例如在Fedora 12的终端下:[[email protected] ~]$ ,在设定PS1环境变量时,我们需要用到预设的一些特殊符号来设定PS1,下面是鸟哥书上关于BASH的特殊变量. o \d :代表日期,格式为 Weekday Month Date,例如 "Mon Aug 1" o \H :完整的主机名称.举例来说,鸟哥的练习机 linux.dmtsai.tw ,那么这个主机名称就