网站首页 > 技术文章 正文
Linux环境变量设置与查看全攻略
在Linux系统中,环境变量是用于定义系统和用户级设置的一种方法,它可以影响程序的行为和系统的运行方式。了解如何设置和查看环境变量对于Linux用户来说是非常重要的技能。
这篇文章将介绍在Linux下如何设置和查看环境变量,以及一些常用的环境变量及其意义。
Linux的变量种类
Linux变量按生存周期可分为永久的和临时的:
- 永久的:需修改配置文件,变量永久生效。
- 临时的:使用export命令声明,变量在关闭shell时失效。
按作用范围划分,包括系统级和用户级:
- 系统级环境变量影响每个登录用户。
- 用户级环境变量仅影响特定用户。
系统级
- /etc/profile: 首个被操作系统读取的文件,影响每个登录用户。
- /etc/bash.bashrc: 系统级的bashrc文件。
- /etc/environment: 在读取用户profile前,设置环境变量。
用户级(位于家目录)
- ~/.profile: 存放用户专用shell信息,登录时执行一次。
- ~/.bashrc: 包含用户的bash shell信息,登录及新开shell时读取。
设置变量的三种方法
- 在 /etc/profile 中添加变量 —— 对所有用户生效且为永久设置。
- 例:用VI编辑 /etc/profile,添加 CLASSPATH 变量。
- 在用户目录下的 .bash_profile 文件中增加变量 —— 对单一用户生效且为永久设置。
- 例:编辑 guok 用户目录下的 .bash_profile,添加 CLASSPATH。
- 直接运行 export 命令定义变量 —— 只对当前shell有效,为临时设置。
- 例:使用 export 变量名=变量值 定义变量。
环境变量的查看
- 使用 echo 命令查看单个环境变量,如 echo $PATH。
- 使用 env 查看所有环境变量。
- 使用 set 查看所有本地定义的环境变量。
使用 unset 删除指定的环境变量
unset 可以删除环境变量。例如:
export TEST="Test..."
$ env | grep TEST
TEST=Test...
$ unset TEST
$ env | grep TEST
上述命令首先设置一个名为 TEST 的环境变量,然后通过 env | grep TEST 确认其存在,最后使用 unset TEST 删除它并验证已删除。
常用的环境变量
- PATH: 决定了shell将到哪些目录中寻找命令或程序。
- HOME: 当前用户主目录。
- HISTSIZE: 历史记录数。
- LOGNAME: 当前用户的登录名。
- HOSTNAME: 指主机的名称。
- SHELL: 当前用户Shell类型。
- LANGUGE: 语言相关的环境变量,多语言可以修改此环境变量。
- MAIL: 当前用户的邮件存放目录。
- PS1: 基本提示符,对于root用户是#,对于普通用户是$。
查看系统多少位
查看Linux是否为64位的命令:
# file /sbin/init
或者
# getconf LONG_BIT
64
getconf 命令还可以获取系统的基本配置信息,如操作系统位数、内存大小、磁盘大小等:
$ getconf -a
最后
了解如何在Linux系统中设置和查看环境变量是基本的系统管理技能之一。
通过上述介绍的方法,可以轻松管理和修改环境变量以满足环境配置需求。希望这篇文章能帮助大家更好地理解Linux环境下的变量设置。
最后~欢迎关注我! @Linux学习的那些事儿
我的个人资源整理,满满都是干货: → 可按需访问领取无限流元宇宙 | VLink
200T免费资料,持续发布中...
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
- 上一篇: Linux基础02
- 下一篇: Linux服务器查看ip、端口、内存的方法!
猜你喜欢
- 2025-03-07 Linux 如何查看端口占用、开放情况
- 2025-03-07 最详尽教程完整介绍-Windows 的 Linux 子系统-WSL1&WSL2
- 2025-03-07 Linux系统LOG日志分析与管理(一)
- 2025-03-07 能够ping通服务器的同时端口不通的排查方法
- 2025-03-07 Linux服务器查看ip、端口、内存的方法!
- 2025-03-07 Linux基础02
- 2025-03-07 linux实例之系统目录的介绍
- 2025-03-07 centos7网卡信息查看及网卡IP地址配置教程,
- 2025-03-07 Linux服务器上监控网络带宽的18个常用命令和工具
- 2025-03-07 Prometheus之监控Linux主机
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)