关于ros工作空间devel下setup.bash的理解

news2024/12/23 11:51:47

在创建了ros的工作空间之后

在工作空间的devel文件夹中存在几个setup.*sh形式的环境变量设置脚本

使用source命令运行这些脚本文件,则工作空间的环境变量设置可以生效(如可以找到该工作空间内的项目)。

source devel/setup.bash

 设置环境变量是为了(source devel/setup.bash)系统能够找到这个工作空间

Ubuntu默认使用的终端是bash,需要在bash中设置ros环境变量,最好把它放在家目录的.bashrc目录下,以便系统启动时能够执行其中的source /opt/ros/kinetic/setup.bash指令,使得工作空间中的环境变量可以生效,这样系统终端能够读懂ros命令,执行相应的操作。

当然也可以把他加入到.bashrc中,这样就不用每次都source自己的程序了

.bashrc
是home目录下的一个shell文件,用于储存用户的个性化设置。

.bashrc在每次打开新的终端时都会被读取,所以我们在运行ROS的某些代码的时候,

可以使用export设置环境变量

export <环境变量名>=<值>
上面的命令会覆盖掉环境变量原有值,如果想给同一个环境变量赋予多个值,需要借助以下语法

export THEPATH=$THEPATH:</path>
eg:export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/gzy/catkin_ws/src/ORB_SLAM2/Examples/ROS
你对 .bashrc 所做的任何修改将在下一次启动终端时生效。如果你想立刻生效的话,运行下面的命令:

source ~/.bashrc
创建了ROS 的workspace之后,需要将workspace中的setup.bash文件写入~/.bashrc 文件中,让

其启动,就像这个样子:

source devel/setup.bash
这句的目的就是在开新的terminal的时候,运行这个setup.bash,而这个setup.bash的作用是让一些ROS* 开头的命令可以使用。同时还能够创建一些ROS开头的环境变量,比如:

ROS_PACKAGE_PATH  
我们可以在终端输入echo $ROS_PACKAGE_PATH来查看变量的值

当你使用rospack find {packagename}这个语句搜索路径的时候,就会在它会依据ROS_PACKAGE_PATH 所提供的功能包路径里去寻找,不在这个环境变量里的路径就不会去寻找了,即便你有这个功能包,也会显示找不到。

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

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

相关文章

为什么 Redis 中的事物很玄学,没人使用 ?

1.为什么不使用 Redis 中的事物 ? Redis 中的事物是 "弱事物"&#xff0c;它在操作的时候&#xff0c;是将多个命令全部加入到事物队列中&#xff0c;然后通过 exec 命令一次性执行所有命令。这样做的好处是可以减少网络往返的次数&#xff0c;提高效率。 它的使用…

Hadoop学习一(初识大数据)

目录 一 什么是大数据&#xff1f; 二 大数据特征 三 分布式计算 四 Hadoop是什么? 五 Hadoop发展及版本 六 为什么要使用Hadoop 七 Hadoop vs. RDBMS 八 Hadoop生态圈 九 Hadoop架构 一 什么是大数据&#xff1f; 大数据是指无法在一定时间内用常规软件工具对其内…

allegro gerber导出

allegro gerber导出 1、生产钻孔数据nc_param.txt钻孔参数文件生成2、生成钻孔图形3、放置钻孔图和钻孔表4、生产钻孔文件5、路板中使用了椭圆孔、矩形或者长条形的开槽孔&#xff0c;就需要出一个铣刀数据文件&#xff0c;单独生成NC Route文件&#xff1b;6、生成叠层截面图7…

森林生物量(蓄积量)估算全流程

python森林生物量&#xff08;蓄积量&#xff09;估算全流程 一.哨兵2号获取/去云处理/提取参数1.1 影像处理与下载1.2 导入2A级产品1.3导入我们在第1步生成的云掩膜文件1.4.SNAP掩膜操作1.5采用gdal计算各类植被指数1.6 纹理特征参数提取 二.哨兵1号获取/处理/提取数据2.1 纹理…

5G NR:协议 - PDCCH信道

1、基本概念 不同于LTE中的控制信道包括PCFICH、PHICH和PDCCH&#xff0c;在5G NR中&#xff0c;控制信道仅包括PDCCH&#xff08;Physical Downlink Control Channel&#xff09;&#xff0c;负责物理层各种关键控制信息的传递&#xff0c;PDCCH中传递的下行控制信息&#xff…

rainbond云原生应用管理平台部署

rainbond简介 rainbond 是 一个 开源的Kubernetes 云原生应用管理平台。 Rainbond 核心100%开源&#xff0c;Serverless体验&#xff0c;不需要懂K8s也能轻松管理容器化应用&#xff0c;平滑无缝过渡到K8s&#xff0c;是国内首个支持国产化信创、适合私有部署的一体化应用管理…

股票开户哪个券商进行炒股佣金最低手续费最低?万1融5!

股票交易的手续费最低金额取决于券商、地区、交易所以及具体的交易类型等因素。不同券商和地区的手续费政策会有所不同&#xff0c;因此无法给出一个通用的最低手续费金额。 一些券商可能会提供特定的交易活动或优惠&#xff0c;例如首次交易免费、低交易费等。此外&#xff0…

linux设备驱动模型:设备树

设备树诞生背景&#xff1a;硬件设备中种类逐年递增&#xff0c;板级platform平台设备文件越来越多。 设备树由根节点开始&#xff0c;可以包含若干个子节点&#xff1b;每个子节点又可以包含若干个子节点。 DTS&#xff08;device tree source&#xff09;&#xff1a;设备树…

人力资源管理难?看看这些大厂是怎么做的!附数据分析模板

组织管理的质量是影响企业运作效率的重要因素之一。今天&#xff0c;本文分享帆软自己是如何用简道云搭建HR系统的。 Tips&#xff1a;本文中的“同学”&#xff0c;是对帆软员工的称呼。本文由帆软人事同学提供。 最初&#xff0c;在帆软的快速成长期&#xff0c;公司聚焦发展…

景区气象站丨它的结构与功能是什么样的?

景区气象站是由传感器、数据采集系统、LED显示屏、供电系统、立杆和监控主机组成&#xff0c;能够同时监测大气温度、湿度、大气压、风速、风向、pm2.5 /pm10、二氧化碳、光照强度等气象参数&#xff0c;并将这些气象参数上传至环境监控平台&#xff0c;具有数据传输快、无需布…

excel中两列数据生成折线图

WPS中excel的两列数据&#xff0c;第一列为x轴&#xff0c;第二列为y轴&#xff0c;生成折线图&#xff0c;并生成拟合函数。 1.选中两列数据&#xff0c;右击选择插入图表&#xff0c;选择XY&#xff08;散点图&#xff09;&#xff0c;生成散点折线图 2.选中图中散点&#x…

高压功率放大器在损伤检测中的应用有哪些

损伤检测技术是一种基于材料力学和声学原理的非破坏性检测技术。它通过对材料内部声波传播的特征进行分析&#xff0c;来判断材料内部是否存在缺陷、裂纹等损伤。在损伤检测技术中&#xff0c;高压功率放大器作为信号源和信号放大器&#xff0c;发挥着重要的作用。下面&#xf…

【Linux】实现进度条的两种方式(C语言实现)

文章目录 前言一、简单写法1.processbar.h2. processbar.c3.main.c 二、使用回调函数1.processbar.h2. processbar.c3.main.c 前言 回车&#xff08;\r&#xff09;&#xff1a;让光标回到当前行的最左端 换行&#xff08;\n&#xff09;&#xff1a;让光标回到下一行的最左端&…

Camunda 7.x 系列【24】脚本任务

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 2.7.9 本系列Camunda 版本 7.19.0 源码地址:https://gitee.com/pearl-organization/camunda-study-demo 文章目录 1. 概述2. 脚本3. 案例演示3.1 建模3.2 测试1. 概述 Script Task脚本任务是一个自动化的活…

SpringBoot - 两种方式刷新配置信息

一、第一种方式 ​ConfigurationProperties​不能自动刷新&#xff0c;需要手动调用contextRefresher.refresh()方法来刷新配置。 import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;Component…

pytorch里面的nn.AdaptiveAvgPool2d

今天遇到nn.AdaptiveAvgPool2d((None, 1)) AdaptiveAvgPool2d函数详细解释&#xff1a; 2D自适应平均池化&#xff08;2D adaptive average pooling&#xff09;是一种对输入信号进行二维平均池化的操作&#xff0c;输入信号由多个输入平面&#xff08;input planes&#xff0…

MAC 查看被占用的端口

今天启动一个一个服务的时候&#xff0c;总是报端口被占用的错误&#xff0c;所以就需要找一下是哪个程序占用了端口&#xff0c;查看的命令是&#xff1a; netstat -anp tcp -v | grep 8082那这个命令出来的那个是进程id呢&#xff0c;很显然我画框的就是了&#xff0c;前面的…

「Python|音视频处理|环境准备」如何在Windows系统下安装并配置音视频处理工具FFmpeg

本文主要介绍如何在Windows系统下安装并配置音视频处理工具FFmpeg&#xff0c;方便使用python进行音视频相关的下载或编辑处理。 文章目录 一、下载软件二、解压并配置三、验证安装 一、下载软件 首先要去 ffmpeg官网 下载软件包 由于上面直接下载的按钮是.tar.xz格式的。为了…

IDEA项目实践——VUE介绍与案例分析

系列文章目录 IDEA项目实践——JavaWeb简介以及Servlet编程实战 IDEA项目实践——Spring集成mybatis、spring当中的事务 IDEA项目实践——Spring当中的切面AOP IDEWA项目实践——mybatis的一些基本原理以及案例 IDEA项目实践——Spring框架简介&#xff0c;以及IOC注解 I…

制造业与MES管理系统:一对不可分割的“黄金搭档”

在当今高度竞争的市场环境中&#xff0c;制造业企业面临着越来越多的挑战。为了保持竞争力并实现可持续发展&#xff0c;许多企业已经开始寻求采用先进的技术和系统来提高生产效率和产品质量。在这方面&#xff0c;MES系统&#xff08;制造执行系统&#xff09;已经成为制造业中…