ROS总结——文件系统
来源:互联网 发布:java重载与重写的区别 编辑:程序博客网 时间:2024/06/17 05:49
文件系统
本博客是对http://wiki.ros.org/上ROS教程的学习总结,欢迎大家交流学习。本部分主要讲ROS文件系统,包括命令行工具rospack、roscd、rosls、和Tab 自动完成输入的使用。
1.准备工作
本部分会用到ros-tutorials程序包,请先安装ros-indigo-ros-tutorials:
$ sudo apt-get install ros-indigo-ros-tutorials
note:如果你所安装的ros版本为hydro,将indigo替换为hydro
Packages: 软件包,是ROS应用程序代码的组织单元,每个软件包都可以包含程序库、可执行文件、脚本或者其它手动创建的东西。
Manifest (package.xml): 清单,是对于’软件包’相关信息的描述,用于定义软件包相关元信息之间的依赖关系,这些信息包括版本、维护者和许可协议等。
2.rospack的使用
rospack可以获取软件包的有关信息,可以通过 $ rospack -h
查看具体用法,在这里以rospack中find参数选项为例,该选项可以返回软件包的路径信息,基本用法:
rospack find [包名称]
eg:
$ rospack find roscp/opt/ros/indigo/share/roscpp
3.roscd的使用
roscd是rosbash命令集中的一部分,可以直接切换(cd)工作目录到某个软件包或者软件包集当中,基本用法:
roscd [本地包名称[/子目录]]
eg:
$ roscd roscpp$ pwd/opt/ros/indigo/share/roscpp
使用roscd也可以切换到一个软件包或软件包集的子目录中:
$ roscd roscpp/cmake$ pwd/opt/ros/indigo/share/roscpp/cmake
使用roscd log可以切换到ROS保存日记文件的目录下。需要注意的是,如果没有执行过任何ROS程序,系统会报错说该目录不存在。
$ roscd log
4.rosls的使用
rosls是rosbash命令集中的一部分,可以直接按软件包的名称而不是绝对路径执行ls命令(罗列目录),基本用法:
rosls [本地包名称[/子目录]]
eg:
$ rosls roscpp_tutorialscmake launch package.xml srv
5.Tab 自动完成输入
当要输入一个完整的软件包名称时会变得比较繁琐,在之前的例子中roscpp tutorials是个相当长的名称,幸运的是一些ROS工具支持TAB 自动完成输入的功能。
eg:
输入
$ roscd roscpp_tut<<<按TAB键>>>
当按TAB键后,命令行中应该会自动补充剩余部分:
$ roscd roscpp_tutorials/
因为roscpp tutorials是当前唯一一个名称以roscpp tut作为开头的ROS软件包。
从上面命令形式可知,ROS命令工具的的命名方式:
rospack = ros + pack(age)
roscd = ros + cd
rosls = ros + ls
这种命名方式在许多ROS命令工具中都会用到。
- ROS总结——文件系统
- 【ROS总结】 ROS接口——Odometry
- ROS总结——ROS节点
- ROS总结——ROS话题
- ROS总结——ROS消息和ROS服务
- ROS总结——rosed
- ROS探索总结(一)——ROS简介
- ROS探索总结(二)——ROS总体框架
- ROS探索总结(三)——ROS新手教程
- ROS探索总结(一)——ROS简介
- ROS探索总结(二)——ROS总体框架
- ROS探索总结(三)——ROS新手教程
- ROS探索总结(一)——ROS简介
- ROS探索总结(二)——ROS总体框架
- ROS探索总结(一)——ROS简介
- ROS探索总结(二)——ROS总体框架
- ROS探索总结(三)——ROS新手教程
- ROS探索总结(一)——ROS简介
- Java-图片处理 Gif转Jpg
- c#如何写一个自杀程序
- Oracle if嵌套(三层结构)
- 微信小程序入门一文章列表
- .Net 面试题 汇总(一)
- ROS总结——文件系统
- mysql怎么才能知道用的是哪个配置文件
- setsockopt用法详解
- jxl实现自动化列宽和行高
- 远程桌面(终端)服务器授权激活步骤
- ArcGIS Pro 1.4 Pandas包导入的一个Bug修复全过程
- HDU-2094-产生冠军(简单模拟)
- Thread Api
- POJ 2608 Soundex G++