linux环境变量介绍
一 linux环境变量概念的重要性
最初用linux是为了学习机器人操作系统(ros),由于之前没有接触过linux,所以并不了解其中的一些关键概念,导致走了许多弯路,如在ros的安装过程中,没有理解安装教程中的1.6 环境变量建立中的指令的意义,所以导致有时在自己工作空间建立的包会有找不到的情况。因此,本文结合ros安装教程中的部分指令,重点介绍linux环境变量的概念及应用。
二 环境变量的概念
环境变量,就是描述环境的变量。环境就是与shell相关的会话和工作环境,变量就是可变的量。
三 变量的分类及操作
变量分为全局变量和局部变量;
全局变量对shell和shell创建的子进程可见(继承性);
局部变量只对创建它们的shell可见(临时性)。
局部变量可以变为全局变量,供其创建的子进程使用(export);
显示全部环境变量(printenv);
显示所有变量(set)
需要注意的是:这些自己定义的全局变量和局部变量在注销bash时就会失效。
四 PATH环境变量
PATH环境变量决定命令的查找位置和PATH变量中的查找顺序;
为什么是PATH变量中的查找顺序,因为命令运行的顺序是按照以下四个方式查找:
1 以相对/绝对路径执行命令
2 由alias找到该命令
3 bash内置的命令
4 PATH变量中的顺序(如你自己写个shell文件,可以把文件夹的路径加入到其中)
五 环境变量配置文件
系统环境配置文件的作用是让bash启动时可直接读取这些文件,而不需要我们自己定义。
配置文件分为全体系统配置文件和个人用户配置文件。
六 启动shell的不同方式
shell启动方式不同,会启用不同的配置文件。
shell启动方式分为三种:
1 登录shell(默认登录shell):需要输入用户账号和密码的shell
2 非登录shell(交互式shell):不需要输入账号密码的shell
3 运行脚本(非交互shell)
登录shell和非登录shell具体如何调用哪些配置文件,本文不做说明,我们只需要知道都调用了环境配置文件 ~/.bashrc 即可。
七 示例:ros安装教程中环境变量的建立
安装ros的官方教程,我们会发现在建立环境变量时会有给我们三种选择:
第一种:可以在你每次在启动新的shell时自动添加ROS的环境变量
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc source ~/.bashrc
第二种:只是在你当前的shell中添加ROS的环境变量
source /opt/ros/kinetic/setup.bash
第三种:使用的是zsh,而不是bash
echo "source /opt/ros/kinetic/setup.zsh" >> ~/.zshrc source ~/.zshrc
这里我们使用前两种进行说明。
我们上面说过自己定义的全局变量和局部变量在注销bash时就会失效,想让自己定义的变量不失效的办法:写入配置文件
因此,就有了ros中第一种环境变量的建立:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc source ~/.bashrc
第一行表示把" "中的字符串写入到~/.bashrc中(需要注销再登陆才会生效,>> 表示数据流输出重定向"追加",>表示"替换")
第二行表示把配置文件读入当前的shell中。(立即生效)
所以有ros第二种环境变量建立方法
source /opt/ros/kinetic/setup.bash
把配置文件读取到当前的shell中。
至此,环境变量的大部分概念都已经介绍完毕。
转载于:https://www.cnblogs.com/qixianyu/p/6568155.html
linux环境变量介绍相关推荐
- Linux环境变量配置
这篇文章主要介绍了Linux环境变量配置全攻略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧. 在自定义安装软件的时候,经常需要 ...
- linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH)
linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH) 2012-11-09 11:17:25 我来说两句 作者:wangeen 收藏 我要投稿 linux环 ...
- Linux环境变量详解
Linux环境变量详解 环境变量是操作系统环境设置的变量,适用于整个系统的用户进程. 环境变量分类 按照权限分类 系统级:系统级的环境变量是每个登录到系统的用户都要读取的系统变量 用户级:用户级的环境 ...
- Linux 环境变量配置总结
Linux是多用户的任务系统,对于每个用户都可以指定特定的用户变量.针对不同程序在不同的环境下运行就需要修改环境变量进行定制,本文介绍 Linux常见的环境变量设置方法,希望对你有帮助.图片 一.Li ...
- linux+查看系统环境路径,Linux环境变量设置方法总结 PATH、LD_LIBRARY_PATH
Linux环境变量设置方法总结 PATH.LD_LIBRARY_PATH PATH: 可执行程序的查找路径 查看当前环境变量: echo $PATH 设置: 方法一:export PATH=PATH ...
- PATH linux环境变量 LD_LIBRARY_PATH详解
LD_LIBRARY_PATH详解 LD_LIBRARY_PATH是Linux环境变量名,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径. 非常多的软件没有root权限安装 ...
- Linux 环境变量配置全攻略,超详细~
感谢您抽出 . . 阅读本文 Linux是多用户的任务系统,对于每个用户都可以指定特定的用户变量.针对不同程序在不同的环境下运行就需要修改环境变量进行定制,本文介绍 Linux常见的环境变量设置方法, ...
- shell编程(三) : [Linux基础] Linux 环境变量
接上一篇文章Linux shell编程(二): Linux shell基础 2.3 Linux环境变量 bash shell用一个叫作环境变量(environment variable)的特性来存储有 ...
- linux环境变量配置的方法,linux 设置环境变量方法是怎样的?Linux环境变量配置注意事项是什么?...
linux系统是一种多用户的任务系统,它可以对每个用户都指定特定的用户变量.不同的程序在不同的环境下运行的时候,都需要去对环境变量来做定制,有很多朋友在设置 linux环境变量的时候,不知道如何操作, ...
最新文章
- mysql查询日期胜负_MySQL面试题:查询每个日期的胜负次数
- OKR和KPI有什么区别?
- 重写了博客上的代码着色脚本
- 一种安全的static变量Get/Set方式
- 重识微信:花 8 小时列举微信功能
- Java中将String格式的标准时间字符串转换为Date格式的方法
- angular select设置默认选中_技术分享 | Charset 和 Collat??ion 设置对 MySQL 性能的影响...
- Introduce Null Object(引入Null对象)
- C++:构造函数的重载
- 独立版TP空间内核|知识付费小程序源码
- 2.7 RMSprop
- DataLoader worker (pid 2287) is killed by signal: Killed. pytorch训练解决方法
- 2021最新对比学习(Contrastive Learning)在各大顶会上的经典必读论文解读
- 计算机英语ppt答辩,计算机专业毕业论文答辩(英文)详解.ppt
- Dukto-R6超级实用的免费跨平台局域网文件/文件夹传输工具
- np.mat()和np.transpose
- 如何注册网站域名?申请域名详细教程
- Packet Tracer –配置多区域OSPFv2
- 2020年了,还不懂数据挖掘?数据挖掘工具有哪些?
- 腾讯投的柠萌影视上市破发:公司市值97亿港元 曾创作《三十而已》
热门文章
- SSIS连接-左外连接
- 百度地图Map属性和方法
- 机器学习——Day 1 数据预处理
- Android 调试技巧之快速重启生效
- 最新容器项目 Kata 曝光
- iOS:ASIHttpRequest虽不更新,但仍值得详细了解
- 《云云众声》第95期:业界大事接着看 HP成功收购Aruba;IBM战略变动 前景发展被看好...
- LOW_VALUE、HIGH_VALUE、ENDPOINT_VALUE转换--UTL_RAW、DBMS_STATS.CONVERT_RAW_VALUE
- C语言实现井子格游戏
- C#正则表达式提取HTML中IMG标签中的SRC地址