27. 【Linux教程】配置环境变量

简介: 27. 【Linux教程】配置环境变量

前面小节介绍了 Linux 系统中如何查看全局环境变量和局部环境变量,本小节介绍如何在 Linux 系统中配置全局环境变量和局部环境变量。

1. 环境变量命令规范

在 Linux 系统中的 bash shell 有个惯例,全部的系统环境变量名都使用大写字母和 _ 组成,若是自定义的局部环境变量或者 shell 脚本,则一般使用小写字母和 _ 组成,这样写的好处是自定义系统变量可以避免覆盖原有的系统全局变量,对生产环境业务造成严重的影响。系统的环境变量可以通过 = 赋值,这些值可以是数字,也可以是字符串,变量名、=、变量值 三者之间不能有空格。

2. 配置局部环境变量

使用 ssh 方式登录了 CentOs 8 系统之后,就会创建一个 shell 进程,默认的 shell 程序就开始运行了,然后就可以在该 shell 进程内自定义局部变量。

2.1 赋值一个局部变量

登录 CentOs 终端之后,可以使用 = 赋值的方式自定义局部变量,命令如下:

echo $my_val
 
my_val=nice
 
echo $my_val

执行结果如下图:

Tips:注意 变量名= 之间不能有空格,若变量值中间有空格,则赋值的时候需要将变量的值用 " 包起来,如 my_val="very good",若不用 " 包起来,则空格前面和后面会被隔开当做是 Linux 命令处理了,会出现异常。

2.2 在 shell 子进程中赋值局部变量

在当前 shell 进程中的子进程中赋值命令如下:

my_val="nice"
 
echo $my_val
 
bash
 
my_val="nice son"
 
echo $my_val
 
exit
 
echo $my_val

执行结果如下图:

Tips:在 shell 子进程中赋值的变量,在子进程结束之后,这个子进程中的局部变量值就会销毁。

3. 配置全局环境变量

3.1 使用 export 设置全局环境变量

上述 shell 子进程中赋值的变量若想要在子进程结束的时候不销毁,则可以使用如下命令设置为全局变量,命令如下:

test_val="dog"
 
echo $test_val
 
bash
 
echo $test_val
 
exit
 
export test_val
 
bash
 
echo $test_val
 
exit

执行结果如下图:

Tips:注意在 shell 子进程中不可使用 export 命令,注意此时其他新打开的 shell 进程窗口无法读到 $test_val 变量。

3.2 设置所有新窗口 shell 进程中能查看的全局环境变量

/etc/profile 文件中可配置全局环境变量,使用 vim 命令打开 /etc/profile 文件,在文件末尾添加 test_val="my test dog",命令如下:

vim /etc/profile

如下图所示:

如上图所示配置好之后,执行如下命令:

source /etc/profile
 
echo $test_val

执行结果如下图:

在上图变量配置好了之后可以在新打开的 shell 进程窗口执行如下命令:

echo $test_val

执行结果如下图:

Tips:新打开 shell 进程会读到 /etc/profile 中的全局变量。

4. 小结

本小节介绍了如何自定义局部环境变量和全局环境变量,其中在 shell 进行中自定义的变量可以使用 export 命令让这个变量对 shell 子进程可见,需要注意的是 export 命令不可在 shell 子进程中使用,最后还介绍了如何在 /etc/profile 文件中配置全局环境变量,然后使用 source /etc/profile 就可以查看到这个变量的值了,新打开的 shell 窗口也能访问到这个变量值。


相关文章
|
1天前
|
存储 搜索推荐 Linux
linux设置环境变量
linux设置环境变量
|
2天前
|
关系型数据库 MySQL Shell
【权限提升】Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
【权限提升】Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
|
5天前
|
Linux 数据处理 数据库
探索Linux的`infocmp`命令:终端配置的得力助手
`infocmp`是Linux下用于查看和比较`terminfo`数据库中终端类型描述的命令。它显示终端的控制序列、按键映射等信息,并能找出不同终端的配置差异。通过参数如`-c`(以termcap格式输出)、`-d`(比较差异)和`-1`(单列显示)等可定制输出。例如,`infocmp $TERM`显示当前终端配置,`infocmp xterm vt100`比较两者差异。了解终端类型和选择合适输出格式是有效使用的关键。
|
7天前
|
Linux Shell 编译器
Linux进程——Linux环境变量
Linux进程——Linux环境变量
11 3
|
14天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch,帮助你快速搭建起这个强大的工具
【6月更文挑战第7天】本文档详细介绍了如何在Rocky Linux 8上安装和配置Elasticsearch,首先通过添加Elasticsearch仓库并使用yum安装。接着,配置Elasticsearch,包括修改`elasticsearch.yml`、设置内存和文件描述符,以及可选的安全设置。启动Elasticsearch后,通过验证日志和测试连接确保其正常运行。文章还列举了常见问题及解决方法,如启动失败、内存不足和网络问题。按照这些步骤,用户可以在Rocky Linux 8上成功部署Elasticsearch,为数据管理与分析提供强大支持。
31 5
|
15天前
|
Linux Shell
Linux配置uwsgi环境
Linux配置uwsgi环境
|
15天前
|
监控 Linux
探索 Linux 中的 Chronyc:一个用于配置和管理 Chrony 的实用工具
Chronyc 是一款用于配置和管理 Linux 系统中 Chrony 时间同步工具的命令行实用程序。Chrony 结合了 ntpd 和 ntpdate 的优点,提供高精度和灵活性。要安装 Chrony,可使用包管理器(如 `apt` 或 `yum/dnf`)。常用 `chronyc` 命令包括:查看时间源状态(`sources`)、跟踪信息(`tracking`)、添加或删除服务器、手动同步时间(`makestep`)以及查看其他信息和帮助。`chronyc` 提供了便捷的方式来监控和调整系统时间同步。
|
15天前
|
Linux Shell 开发者
深入了解 Linux 命令 `autoscan`:为自动配置脚本做准备
`autoscan` 是 Linux 和 Unix-like 系统中用于软件配置的工具,它扫描源代码并生成 `configure.scan` 文件,为 `autoconf` 创建初始模板。开发者通常将 `configure.scan` 重命名为 `configure.ac` 并进行编辑,然后用 `autoconf` 转换为可执行的 `configure` 脚本。在使用前,记得备份项目,确保权限,并安装 `autoconf`。`configure` 脚本能适应多种系统,检查环境并生成 `Makefile`。
|
15天前
|
Ubuntu Linux Shell
github用存在的私钥在Linux上配置免密登录
在Linux上配置GitHub免密登录,使用已有的私钥。系统环境为Ubuntu 22.04.3 LTS。步骤包括:1) 将名为`github`的私钥文件上传至`~/.ssh/github`;2) 设置正确权限`chmod 600 ~/.ssh/github`和`chmod 700 ~/.ssh`;3) 启动SSH代理并添加私钥`ssh-agent -s`和`ssh-add ~/.ssh/github`。完成上述步骤后,可以无缝使用GitHub。
23 0
|
16天前
|
Ubuntu Linux
ubuntu linux配置bond 网卡绑定 多个bond配置多网关
ubuntu linux配置bond 网卡绑定 多个bond配置多网关