Linux---环境变量、$符号、自行设置环境变量

news2024/9/24 5:23:19

1. 环境变量

环境变量是操作系统(WindowsLinuxMac)在运行的时候,记录的一些关键性信息,用以辅

助系统运行。

Linux系统中执行:env命令即可查看当前系统中记录的环境变量

环境变量是一种Key-Value型结构,即名称和值,如下图:

如左图,图中记录了:

HOME:/home/shaonian,用户的HOME路径

USER:shaonian,当前的操作用户

PWD:当前工作路径

.....

等等一系列信息,用于辅助系统在运行的时候,从环境变量中获取关键信息。

无论当前工作目录是什么,都能执行/usr/bin/cd这个程序,这个就是借助环境变量中:PATH这个

项目的值来做到的。

[shaonian@localhost ~]$ env | grep PATH

PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ishaonian/.local/bin:/home/shaonian/bin 

PATH记录了系统执行任何命令的搜索路径,如上图记录了(路径之间以:隔开):

/usr/local/bin

/usr/bin

/usr/local/sbin

/usr/sbin

/home/shaonian/.local/bin

/home/shaonian/bin

当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的本体

比如执行cd命令,就从第二个目录/usr/bin中搜索到了cd命令,并执行.

2. $符号

Linux系统中,$符号被用于取变量的值。

环境变量记录的信息,除了给操作系统自己使用外,如果用户想要取用,也可以使用。

取得环境变量的值就可以通过语法:$环境变量名  来取得

比如: echo $PATH

就可以取得PATH这个环境变量的值,并通过echo语句输出出来。

又或者:echo ${PATH}ABC

当和其它内容混合在一起的时候,可以通过{}来标注取的变量是谁。

[shaonian@localhost ~]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ishaonian/.local/bin:/home/shaonian/bin 
[shaonian@localhost ~]$ echo ${PATH}ABC
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ishaonian/.local/bin:/home/shaonian/binABC

3. 自行设置环境变量

Linux环境变量可以用户自行设置,其中分为:

临时设置,语法:export 变量名=变量值

永久生效:

针对当前用户生效,配置在当前用户的:  ~/.bashrc文件中

针对所有用户生效,配置在系统的:  /etc/profile文件中

并通过语法:source 配置文件,进行立刻生效,或重新登录FinalShell生效

[shaonian@localhost ~]$ export SHAONIAN=666
[shaonian@localhost ~]$ echo SHAONAIN
666

自定义环境变量PATH:

环境变量PATH这个项目里面记录了系统执行命令的搜索路径。

这些搜索路径用户也可以自行添加到PATH中去。

测试:

在当前HOME目录内创建文件夹,myenv,在文件夹内创建文件maha

通过vim编辑器,在maha文件内填入:echo 哈哈哈哈哈

完成上述操作后,随意切换工作目录,执行maha命令尝试一下,会发现无法执行。

修改PATH的值:

临时修改 PATHexport PATH = $PATH:/home/shaonian/myenv,再次执行maha,无论在哪里都

能执行了。

或将 export PATH = $PATH:/home/shaonain/myenv,填入用户环境变量文件或系统环境变量文件

中去。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/658448.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python如何选取CSV某几列数据

Python如何选取CSV某几列数据 在数据处理过程中,CSV是一种非常常见的数据文件类型。CSV文件中的数据由逗号分隔的值(Comma-Separated Values)组成。处理CSV数据的任务之一是从CSV文件中选择特定的列数据,以进行数据分析或处理。在…

shell脚本基础

目录 一、概述 二、shell (一)shell命令解释环境 (二)类型 (三)查看系统中支持的shell:cat /etc/shells (四)查看系统默认shell: echo $SHELL 三、变量 (一&…

HTMLCSS Day04 CSS盒模型

文章目录 1.盒子组成盒子属性( Box properties)marginborderpaddingwidth & height盒子一般指的是块元素,盒子是我们布局的重要机制。一个盒子应该由外边距、边框、内边距、内容组成。 - width & height- 边框属性1.什么是边框?2.边…

TiDB Contributor 资料汇总

作者: Billmay表妹 原文来源: https://tidb.net/blog/cf95cdb7 开源社区建设 TiDB 社区是由 TiDB 生态中的开发者、用户、合作伙伴一起建立的分享、学习平台。TiDB 线上社区汇聚了 29149 位 TiDB 资深用户(注册用户数)&#x…

将一个一维数组前段和后端的0元素去除的numpy.trim_zeros()方法

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 除去一维数组第一个非零元素之前的零 除去一维数组最后一个非零元素之后的零 numpy.trim_zeros() 选择题 关于以下代码说法错误的一项是? import numpy as np a np.array([0,0,1,0,2,0,0])…

前端Vue分享菜单按钮弹框、微博分享、QQ分享、微信好友、朋友圈

前端Vue分享菜单按钮弹框、微博分享、QQ分享、微信好友、朋友圈 &#xff0c; 下载完整代码请访问uni-app插件市场址:https://ext.dcloud.net.cn/plugin?id13085 效果图如下&#xff1a; #### 使用方法 使用方法 <!-- 分享 ref: 设置一个唯一ref contentHeight&#xff…

记一次fastjson事件应急响应

为方便您的阅读&#xff0c;可点击下方蓝色字体&#xff0c;进行跳转↓↓↓ 01 事件背景介绍02 事件分析过程03 事件分析结果04 安全加固建议 01 事件背景介绍 某内部应急演练中&#xff0c;安全部门收到通知&#xff0c;称公司内部资产被入侵&#xff0c;且可能已经开始内网横…

YOLO V2原理总结

yolo v2在yolo v1的基础上添加或更换了一些内容&#xff0c;一定程度上结局了yolo v1的一些问题。 ✨1 概括 做出的改变有8个&#xff1a; 添加Batch Normalization层高分辨率主干网络anchor box机制全卷积网络结构新的主干网络K-means聚类先验框使用更高分辨率特征多尺度训练…

(十)异步-委托异步调用(4)

一、委托异步执行 当委托对象被调用时&#xff0c;它调用其调用列表中包含的方法。这是同步完成的。 如果委托对象在调用列表中只有一个方法&#xff08;引用方法&#xff09;&#xff0c;它就可以异步执行这个方法。委托类有两个方法&#xff0c;叫作 BeginInvoke 和 EndInv…

【计算机网络】进程崩溃或网络中断后,TCP 连接还存在吗?

【计算机网络】进程崩溃或网络中断后&#xff0c;TCP 连接还存在吗&#xff1f; 参考资料&#xff1a; TCP 连接&#xff0c;一端断电和进程崩溃有什么区别&#xff1f; 拔掉网线后&#xff0c; 原本的 TCP 连接还存在吗&#xff1f; TCP/IP卷一:94—TCP保活机制 TCP Keepaliv…

记一次gitlab应急响应

为方便您的阅读&#xff0c;可点击下方蓝色字体&#xff0c;进行跳转↓↓↓ 01 事件背景介绍02 事件分析过程03 事件分析结果04 安全加固建议 01 事件背景介绍 某内部应急演练中&#xff0c;态势感知平台上出现gitlab RCE漏洞攻击成功告警&#xff0c;现需根据流量情况进行安全…

013、数据库管理之连接管理

连接管理 TiDB的连接特性连接TiDB 数据库开发接口支持 实验案例 TiDB的连接特性 无状态MySQL协议支持 100% 兼容MySQL 5.7协议支持MySQL 5.7常用功能与语法 MySQL 语法支持的限制&#xff08;不支持的功能特性&#xff09; 存储过程触发器外键函数其它 连接TiDB 数据库 使…

记一次shiro应急响应

为方便您的阅读&#xff0c;可点击下方蓝色字体&#xff0c;进行跳转↓↓↓ 01 事件背景介绍02 事件分析过程03 事件分析结果04 安全加固建议 01 事件背景介绍 某内部应急演练中&#xff0c;安全部门监测到WAF上存在shiro攻击成功告警信息&#xff0c;现需根据流量情况进行安全…

Vue中的表单上传与文件预览

Vue中的表单上传与文件预览 在Web应用程序中&#xff0c;文件上传和预览是非常常见的功能。在Vue中&#xff0c;我们可以使用axios和FormData来实现表单上传&#xff0c;使用FileReader来实现文件预览。在本文中&#xff0c;我们将介绍如何在Vue中实现表单上传和文件预览功能。…

[阿里云使用k8s技术部署微服务]

1.1 检查CPU/内存/网络设置 对虚拟机的要求(必须): CPU:最少2核 内存:master >4G&#xff0c;node >3G 网络:NAT模式 操作系统版本: Docker 要求 CentOS 系统的内核版本必须高于 3.10。 如果内核版本为3.10&#xff0c;则发行编号最好能升级到1127&#xff0c; 即:3.10.0…

1000*B. Keep it Beautiful

input 3 9 3 7 7 9 2 4 6 3 4 5 1 1 1 1 1 5 3 2 1 2 3output 111110010 11111 11011 解析&#xff1a; 如果数据不小于前一个数据&#xff0c;则一直为美丽序列&#xff1b; 当碰到第一个小于末尾的数据时&#xff0c;1. 如果他比首数据大&#xff0c;则不符题意。2. 小于等…

【ARMv8 SIMD和浮点指令编程】NEON 移动指令——精通 MOV?

移动指令主要涉及 MOV 和 MVN&#xff0c;它们分别是移动和求反移动。如果你认为仅仅两条指令&#xff0c;还是太小看设计者了&#xff01; 1 MOV (element) 将向量元素移动到另一个向量元素。该指令将源 SIMD&FP 寄存器的向量元素复制到目标 SIMD&FP 寄存器的指定向…

短视频seo系统源码私有化部署分享

短视频seo矩阵系统源码部署需要以下步骤&#xff1a; 确定系统环境要求&#xff1a;账号矩阵系统需要服务器环境支持PHP和MySQL数据库&#xff0c;因此需要确保服务器环境符合要求&#xff0c;并安装好相应的软件。例如&#xff0c;可以使用XAMPP或WAMP等软件包来快速安装PHP和…

中国唯一 一家Linux 基金会金牌会员 落户阿里云

导读2 月 20 日&#xff0c;全球知名非营利性组织 Linux 基金会宣布&#xff0c;阿里云正式成为 Linux 基金会金牌会员。阿里云表示将持续加大对开源项目的支持&#xff0c;并发挥自己的力量。 2 月 20 日&#xff0c;全球知名非营利性组织 Linux 基金会宣布&#xff0c;阿里云…

pyqt6安装

1、安装pyqt6和pyqt6-tools包 注意&#xff1a;pyqt6-tools目前仅支持python3.9版本&#xff0c;3.9版本后的安装部成功。&#xff08;截止2022.11.20&#xff09; 1.1 安装pyqt6和pyqt6-tools 安装pyqt和pyqt6-tools可以使用conda和pip进行安装 &#xff08;1&#xff09;…