从0开始学习Linux——环境变量详解

期目录:

从0开始学习Linux------简介&安装

从0开始学习Linux------搭建属于自己的Linux虚拟机

从0开始学习Linux------文本编辑器

从0开始学习Linux------Yum工具

从0开始学习Linux------远程连接工具

从0开始学习Linux------文件目录

从0开始学习Linux------网络配置

从0开始学习Linux------防火墙配置

从0开始学习Linux------系统服务管理

从0开始学习Linxu------系统常用命令

从0开始学习Linux------进程管理

从0开始学习Linux------用户管理

从0开始学习Linux------文件管理

从0开始学习Linux------Shell编程详解【01】

从0开始学习Linux------Shell编程详解【02】

从0开始学习Linux------Shell编程详解【03】

从0开始学习Linux------Shell编程详解【04】

从0开始学习Linux------定时任务

上期教程我们学习了定时任务,这期教程我们将学习环境变量。

一、环境变量

环境变量是操作系统中用于存储系统配置和程序设置的变量。环境变量可以在系统级别、用户级别或进程级别进行设置和使用,它们在用户登录、系统启动、进程执行等方面起着重要的作用。

1.1 基本概念

环境变量是存储一些关于操作系统和应用程序运行状态的键值对。这些键值对的作用是向程序传递信息,告诉它们在哪些目录查找文件、如何与其他程序交互等。

常见的环境变量包括:

  • PATH:指定可执行文件的搜索路径,决定了哪些目录中的程序可以在命令行中直接运行。
  • HOME:当前用户的主目录。
  • USER:当前用户的用户名。
  • SHELL:当前用户使用的Shell。
  • LANG:系统的语言和区域设置。
  • PWD:当前工作目录。

例如:

export PATH=$PATH:/opt/myprogram/bin

环境变量主要分为两种类型:

  • 系统环境变量:影响整个系统及所有用户。
  • 用户环境变量:仅影响当前用户。

1.2 查看环境变量

我们可以使用printenv命令查看当前的环境变量。

当然我们也可以使用echo命令查看特定的环境变量。

1.3 临时设置环境变量

环境变量可以在命令行中临时设置,这些变量在当前终端会话期间有效,当终端关闭时会失效。

下面我们使用root账号重新开启一个会话。

我们可以看到在新会话中VARE_NAME这个临时环境变量不存在。

1.4 永久设置环境变量

为了使环境变量在系统重启或用户注销后依然有效,我们需要将它们添加到特定的配置文件中。

方式1:在/etc/profile中设置系统级环境变量

/etc/profile是一个系统级别的配置文件,用于为所有用户提供环境变量。我们可以将环境变量添加到该文件中,使其在所有用户登录时都生效。

首先我们需要打开/etc/profile文件。

vim /etc/profile

在文件末尾我们可以添加上我们自己的环境变量。

编辑好环境变量文件保存退出以后需要重新加载环境变量以便其生效。

source /etc/profile

方式2:在用户的.bash_profile中设置用户级环境变量

如果我们只想为当前用户设置环境变量,可以在用户的~/.bash_profile文件中进行设置。该文件是每个用户登录时执行的配置文件。

首先我们先使用文本编辑器打开~/.bash_profile文件并在末尾添加自己的环境变量。

vi ~/.bash_profile

我们将~/.bash_profile文件编辑保存好退出来以后需要重新加载环境变量以使其生效。

方式3:在.bashrc中设置环境变量

.bashrc文件是用于设置 Bash shell 会话的配置文件,通常用于设置一些会话相关的变量。如果希望环境变量仅在交互式 shell 会话中有效,可以把它们添加到.bashrc中。

vi ~/.bashrc

首先我们需要先使用文本编辑器打开.bashrc文件并在文件末尾添加自己的环境变量。

我们在编辑完.bashrc文件并保存退出以后,需要重新加载以使其生效。

source ~/.bashrc

方式4:在/etc/environment中设置环境变量

/etc/environment文件用于设置系统范围的环境变量,适用于所有用户。该文件中一般不包含任何 shell 特定的语法,仅包含key=value格式的环境变量。

首先我们先使用文本编辑器打开/etc/environment文件,并在添加我们的环境变量。

vi /etc/environment

配置好环境变量后,我们需要重新加载以使其生效。

source /etc/environment

1.5 环境变量优先级

当多个文件中设置了同一个环境变量时,文件中的优先级从高到低为:

  • ~/.bashrc 或 ~/.bash_profile(用户级别)
  • /etc/profile (系统级别)
  • /etc/environment(系统范围)
  • 其他 shell 配置文件

1.6 其它相关文件

  • /etc/profile.d/:该目录包含多个脚本文件,它们在系统启动时会被读取。这些脚本通常用于为某个程序设置环境变量。例如,安装某个软件时,可能会在该目录下创建一个脚本文件来设置该程序的环境变量。

  • ~/.bash_logout:当用户退出 Bash shell 时执行的文件。可以在此文件中设置一些退出时需要执行的清理任务。

本节教程内容就暂时先到这里,更多内容将在后续教程中进行讲解。

相关推荐
Simulink_13 分钟前
ROS学习笔记15——Xacro
linux·笔记·学习·机器人·ros
北京迅为42 分钟前
【北京迅为】iTOP-4412全能版使用手册- 第五章 Linux常用命令
linux·嵌入式硬件·4412开发板
南暮思鸢44 分钟前
应急响应靶机——linux2
linux·网络安全·wireshark·write up·应急响应靶机系列·宝塔面板利用·webshell流量分析
2301_775281191 小时前
当日本人说「お疲れ様」时,该怎么回?柯桥日语培训零基础学习
学习
sun0077002 小时前
ubuntu增加swap交换空间
linux·运维·服务器
E___V___E2 小时前
CSAPP学习
学习
LinuxST2 小时前
27、基于Firefly-rk3399中断休眠唤醒实验(按键中断)
linux·开发语言·stm32·嵌入式硬件
Tony_long74832 小时前
Python学习——猜拳小游戏
开发语言·python·学习
疯狂吧小飞牛2 小时前
openssl颁发包含主题替代名的证书–SAN
运维·服务器·网络