ROS的文件系统

这篇博客介绍一下ROS的文件系统的基本概念,用户可以直接在官方网站:http://wiki.ros.org/ROS/Tutorials/NavigatingTheFilesystem去查看官方手册。

ROS文件系统中的两个最基本的概念:PackageManifest,即包和清单文件。

(1)Package是组织ROS代码的最基本单位,每一个Package都可以包括库文件,可执行文件,脚本及其它的一些文件。

(2)Manifest文件是对Package的相关信息的一个描述。他提供了Package之间的依赖性,以及一个包的元信息,比如版本、维护着和许可证等信息。

文件系统提供了几个很有用的命令行的工具,专门用来对ROS的文件系统进行操作。


rospack被用来获取一个包的相关信息,这里只介绍它的find选项,用法如下:

# rospack find [package_name]

您可以在一个新打开的终端中输入如下命令:

rospack find roscpp

就可以找到roscpp这个包的位置信息,可能会返回类似于下面的这种结果:

/opt/ros/hydro/share/roscpp

roscd命令允许您利用包的名字直接切换到相应的文件目录下,当然这是对ROS文件系统而言,它的使用方法如下:

roscd [locationname[/subdir]]

举一个例子,直接在终端输入:

roscd roscpp

就可以直接切换到roscpp这个文件的目录下,可以使用如下命令来进行验证:

pwd

返回的结果类似与如下形式:

/opt/ros/hydro/share/roscpp

roscd将只能打开存在于环境变量ROS_PACKAGE_PATH中的目录及其子目录(也就是包),您可以使用如下命令来查看ROS_PACKAGE_PATH中的内容:

echo $ROS_PACKAGE_PATH

您所看到的结果可能类似于以下的情况:

/opt/ros/hydro/base/install/share:/opt/ros/hydro/base/install/stacks

每一个路径使用“:”分割。


rosls能够让您直接利用包的名字,去列举包中的所有文件即文件夹,而不用使用绝对路径。它的使用和roscd是一样的,只有存在于ROS_PACKAGE_PATH中的目录及其子目录才能使用这个命令。使用方法如下:

# rosls [locationname[/subdir]]

例子如下:

rosls roscpp_tutorials

总结:

这篇博文主要介绍了ROS的文件系统中两个重要的概念:包和清单文件.同时介绍了一些必须熟练使用的命令行工具.

rospack,roscd,rosls.

posted @   stemon  阅读(512)  评论(0编辑  收藏  举报
编辑推荐:
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
阅读排行:
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
· 软件产品开发中常见的10个问题及处理方法
点击右上角即可分享
微信分享提示