shell的环境变量
创始人
2024-05-24 22:43:33
0

一、什么是环境变量

       环境变量由系统提前创建的,不仅在Shell编程方面,而且在Linux系统管理方面,都起着非常重要的作用。

       打个比方,我们平时所用的编程语言如c语言,我们都会碰到变量的作用域的问题。比如在函数中 定义的变量  在  函数外 不能使用。要想函数外能使用此变量,该变量得为全局变量。

       而我们的环境变量也是如此,局部变量 和 环境变量全局变量)。当我们shell编程时,如 vim  xx.sh,编写 里面的变量 局部变量。仅在创建它的Shell中有效。而我们的环境变量对创建xx.sh 的Shell 及其 派生出来的子进程都有效。

二、环境变量存在哪里

        一般存在  ~/.bashrc  或     /etc/profile    文件当中(系统自动调用的脚本)

列出系统中所有的环境变量,可使用  env  命令

 三、常用的环境变量

       3.1 env 命令          查看环境变量    

在Shell下,用env命令查看当前用户全部的环境变量

显示了所有的环境变量,不方便查看,使用grep筛选。

      env|grep               环境变量名

例如:查看环境变量名中包含PATH的环境变量。

3.2  PATH                         设置命令的搜索路径,以冒号为分割

3.3  HOME                       当前用户主目录:/root

3.4  SHELL                       当前shell解析器类型:/bin/bash

3.5  HISTFILE                  显示当前用户执行命令的历史列表文件:/root/.bash_history

3.6  HOSTNAME              显示当前主机名:itheima

3.7  LANG                        默认设置当前系统语言环境:zh_CN.UTF-8

3.8  HOSTTYPE               显示主机的架构,是i386、i686、还是x86、x64等:x86_64

  使用环境变量,一般环境变量类似c语言中的全局变量,可以再shell脚本文件中任意使用

例子如下:

输出结果

四、自定义设置环境变量

4.1、临时设置环境变量

       什么是临时环境变量,意思就是当关闭终端或关机重启时,该临时环境变量就会被格式化掉。

4.2、设置临时环境变量

(1)例子:在终端添加临时环境变量

 打印env输出的环境变量 结果

 环境变量存在SHELLMAY=999的环境变量

注意:当我们关闭终端,或者重启,或者开另外一个终端,都不会存在刚设置的临时环境变量。

4.3、永久设置环境变量

          需要在配置文件(~/.bashrc 或 ~/etc/profile)中进行设置即可,设置完毕后需要通过
source命令配置文件立即生效。如: source  ~/etc/profile 当然, /etc/profile这个文件只有在root(超级用户)下才能修改。

 (3)例子:创建永久的ZYY=100

第一步:sudo vim  ~/etc/profile

第二步:

第三步:保存退出                        (如果不使用sudo  无法保存) 

第四步:source  ~/etc/profile

第五步:输出 env

 特此注意:

当我们再开一个终端时,使用env命令查看,是找不到  刚设置的 环境变量。

刚设置的永久环境变量是没有真正生效起来,只是使用source 命令  让它临时运行起来而已。

解决的办法:重启,问题解决

下课!!!

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...