LinuxPack

LinuxPack.Net
Linux软件网——精选每一篇高品质的技术干货
  1. 首页
  2. 正文

如何在Linux系统中列出和设置环境变量?

2023年5月15日 518点热度

Linux操作系统广泛用于服务器,以承载复杂的应用程序,这种应用程序具有十分具体的系统设置。当您启动一个新的Linuxshell会话时,会读取某个系统配置并相应地设置您的计算机。这种配置和设置由环境变量控制。

我们将了解怎样在Linux系统中列举和设置环境变量。

目录

先决条件Linux中的环境变量是哪些

Linux操作系统支持两种类型的变量——环境变量和shell变量。这种变量会影响您的应用程序和程序的工作形式。

环境变量是影响整个系统的系统范围的变量。它们被所有shell和衍生的子进程使用,但是在命令行和GUI上都可用。Linux环境变量是为程序和进程提供必要信息的动态系统值。这种变量控制默认Web浏览器、默认文件编辑器或默认文本编辑器、可执行文件、键盘布局设置、目录路径和系统区域设置等内容。基本上,那些是具有分配给它们的值的名称。比如,我们使用JAVA_HOME变量来设置安装JDK或JRE的目录位置。

Shell变量是特定shell实例的本机变量虚拟主机 linux,仅影响shell函数。每位Linux操作系统shell,比如Bash和Kornlinux环境变量 文件配置,都有自己的内部shell变量。这有助于跟踪当前会话中的数据——主要用于交互式shell会话或将变量保持在本地的脚本。Bash特定变量一般以BASH_为前缀,比如BASH_VERSION。

环境变量和shell变量具有相同的格式:

VAR_NAME=value

在使用shell和环境变量时,您必须谨记以下变量要求:

下表列举了一些最常见的环境变量。

变量的名称

描述

PATH

Linux在执行命令时搜索的以逗号分隔的目录列表。

USER

当前登入用户的用户名。

HOME

当前用户的主目录。

UID

当前用户的惟一标示符。

EDITOR

用于编辑文件的默认编辑器。

SHELL

当前用户的shell的名称。

TERM

当前终端仿真。

PWD

当前工作目录。

TEMP

临时目录的路径。

其中一些变量的值在每台Linux计算机上可能不同。

列举当前环境变量

Linux有几个变量,了解它们的值十分重要,由于它们会影响系统的行为。有几个命令可用于列举Linux中的环境变量。

要复印所有环境变量的列表,请键入:

printenv

您还可以使用env命令列举所有Linux变量:

env

变量列表可能很长,因而无法阅读。您可以将more或less命令与printenv命令一起使用,一次一屏地列举环境变量:

printenv|more

上述所有命令一次列举多个变量。要查找有关指定变量的信息,请使用以下命令:

printenvHOME

此命令复印用户的主目录。

您也可以使用echo命令复印环境变量值。以下示例复印PATH环境变量的值:

echo$PATH

PATH变量有多个值,它们用逗号分隔。

设置环境变量

Linux提供了两种设置环境变量的技巧。可以先设置一个shell变量,之后将shell变量导入为环境变量,第二种方法是直接导入环境变量。

要为当前shell会话创建新的环境变量并设置它们的值,请使用以下命令:

MYVAR=foo

此时,仅为shell创建新的环境变量。您可以使用echo命令确认是否设置了变量。此变量不是环境变量,假若您使用printenv命令,其输出将为空:

printenvMYVAR

如今我们可以使用export命令将此shell变量转换为单个环境变量:

exportMYVAR

如今MYVAR是一个环境变量,这会影响当前shell以及从当前shell启动的所有进程。

您何必总是遵照这个漫长的过程来设置环境变量。您可以在单个命令中直接导入环境变量:

exportMYENV=bar

您必须注意,通过这种命令设置的变量仅适用于当前会话。一旦关掉会话,这种变量都会遗失。要永久设置环境变量,您必须使用文本编辑器编辑/etc/profile.d目录、~/.bashrc、/etc/environment或/etc/profile文件。

设置环境变量持久化

持久意味着当您关掉shell会话或重新启动时,您不须要重置环境变量的值。倘若您希望环境变量可用于所有shell会话,甚至跨用户,这么您必须在配置文件中添加环境变量。

使用/etc/environment文件为命令行和图形界面添加整个系统(即所有用户、所有进程)都可用的环境变量。该文件只接受VAR_NAME="value"格式的变量,不要使用导入。比如,使用您喜欢的编辑器打开/etc/environment文件,并使用以下格式添加环境变量:

VARIABLE_NAME=value

设置从当前用户注销并再度登陆以进行修改后。

使用/etc/profile配置文件设置在启动登陆shell时为所有用户手动加载的环境变量。使用export命令在用户配置文件中申明环境变量,如下所示:

linux下mpi环境配置_linux配置lamp环境_linux环境变量 文件配置

exportPATH=$PATH:/place/with/the/file

在~/.bashrc文件或~/.profile文件中设置一个用户特定的环境变量,使用如下:

exportJAVA_HOME=/opt/jdk/11exportPATH="$JAVA_HOME/bin:$PATH"

运行source~/.bashrcbashshell命令以加载当前shell会话中的环境变量。

取消设置环境变量

使用unset命令取消设置或删掉变量。

unsetNAME

unset命令删掉使用终端命令导入的变量。并且,您储存在配置文件中的变量只会从当前shell会话中删掉。当您创建一个新的终端会话时,它们会手动重新设置。

您可以通过从配置文件中删掉变量来从Linux计算机中永久删掉变量。

推论

我们学习了怎样在Linux中列举和创建环境变量。我们还见到了怎样通过编辑bash配置文件使变量在重启后保持不变。

环境变量是设置常用值的好方式,只需使用变量而不是一次又一次地自动输入值。本教程中列举的常用环境变量可用于场景Linux发行版,比如Ubuntu、Debian、Redhat。

我新建了个技术陌陌群:microservicedevlinux环境变量 文件配置linux常用命令,欢迎同行扫码步入

喜欢的同事记得给个关注~

,

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 6
最后更新:2023年5月15日

Linux软件网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞

Linux软件网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
Linux内核升级,十大重磅新特性,你掌握几个? 的控制台端口,默认启动脚本没有任何问题 Linux魅力:轻松安装Curses库,开启无限可能 (Linux命令行模式常用快捷键)Linux系统运行级别 深入解析Linux内核源代码,轻松掌握分析工具 常用的Linux图形界面开发的评测对比! virtualbox centos ip VirtualBox设置CentOS IP 如果你知道怎么做,你可以在Chromebook上启用Linux Linux服务器安全维护:让网站坚如磐石 Linux上运行Windows程序需要安装Wine,Wine文件就靠命令了 BodhiLinux发行版:开启全新界面设计与中文体验 如何在虚拟机中安装UbuntuServer操作系统?光盘 计算机工程师分享ghostunix系统下载的经验 文中介绍的非常详细,退出vim编辑器的方法 Linux删除所有软连接 Pythonpython编程python编辑器的退出方法和命令方法介绍 centos grub.cfg 升级系统引导,尽享CentOS Grub.cfg的多样性 嵌入式培训的课程内容和课程体系是怎么样的 CentOS打造高效稳定的SVN服务器 文章目录命令行工具重定向归档/解档
ssh linux 掌握SSH Linux的九个关键,你知道多少?如何安装Windows中的exe软件包的方法?suse linux 版本 高效工作,suselin版本的十大亮点Linux系统快速安装桌面环境网络操作系统外文名:NetworkOperating简介Linux开机自动进纯文本模式修改方法总结!!领略CentOS软件中心的魅力!RedHatLinux的一些基础知识(敲黑板)谁的小眼睛还没有看老师Linux日志中文乱码问题该如何解决?七个方面介绍Linux操作系统下安装软件包的方式有哪些?Unix/Linux程序设计:要点、技巧、教程Jetbrains全系列IDE稳定放心使用Linux虚拟存储管理分析摘Linux图形界面安装指南图1.11LinusBenedictTorvalds1大学二年级的学习操作系统Linux教学:版本、特点与适用场景华清远见STM32MP157和imx6ull开发板对比对比Linux开源社区:评测对比全解析Java程序的运行流程和运行3个步骤百度云上的Unix编程艺术经验脚本创建脚本教程
查看Linux版本位数 Linux的目录结构3.1Linux的安装及下载软件介绍 2.设备驱动程序和内核之间的接口Linux系统和设备驱动 linux usb网卡驱动安装 Linux内核遭遇的问题主要有如下几个内核是什么? virtualbox centos ip VirtualBox设置CentOS IP 服务器安全狗Linux版V2.0(SafeDogforLinuxServer) 如何使用8.0版本的话引擎章节?几个小技巧 2016年10月12日Linux上挂载外接设备的方法 坚守Windows7这个旧系统是一个怎样的体验? 9.4Linux权限如何设定(权限位)(9.5chmod) 默认网关IP,你的Linux桌面所连接的地址是什么? Linux文件传输方法精选 领略CentOS软件中心的魅力! Linux命令:轻松查看文件内容 eBPF是天使,亦或恶魔?越来越严峻的Linux安全形势 嵌入式培训的课程内容和课程体系是怎么样的 如何在iPhone上安装deb文件?Cydia怎么用文件 Linux分区技巧:简单上手,轻松解析! 前两天心血来潮,草草备份了下文件准备全盘格式化重装系统 的是“ps”命令:ps、ps命令、命令和操作
标签聚合
6
书籍
课程
技术群
技术干货大合集↓
  • 2023年9月 / 88篇
  • 2023年8月 / 122篇
  • 2023年7月 / 123篇
  • 2023年6月 / 119篇
  • 2023年5月 / 123篇
  • 2023年4月 / 116篇
  • 2023年3月 / 110篇
  • 2023年2月 / 83篇
  • 2023年1月 / 159篇
  • 2022年12月 / 174篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 LinuxPack.net ALL RIGHTS RESERVED.

京ICP备16058923号-4