1.浏览ROS文件系统
本节的内容是介绍ROS文件系统的概论,包括如何使用roscd、rosls、rospack这3个ROS系统的命令行工具。
1.1 先决条件
要先安装ros-tutorials这个包(只是用于演示练习用的)。
sudo apt-get install ros-jade-ros-tutorials
1.2 ROS文件系统的相关概念
*Packages: package是ROS代码的组织单元,每个包里面都包含了各种库、可执行文件、脚本和其他文档。
*Manifest:(package.xml)是包的描述清单,它用于定义包之间的依赖关系和记录包的元信息(包括版本、维护者、许可等等)
1.3 Filesystem tools
代码常常分布在ROS包的各个地方,通过常用的ls、cd这些工具浏览文件在ROS中会很麻烦,因此ROS实现了以下工具:
1.3.1 rospack 工具
rospack允许使用它得到包的信息,这里我们只演示它的find选项,find选项返回包的路径:
$ rospack find [package_name]
如果在系统中存在,它会返回包的绝对路径。
1.3.2 切换包目录-roscd
roscd工具能够在不使用Unix提供的cd命令时,比cd更加快速的定位到ROS包:
$ roscd package_name
roscd是根据环境变量ROS_PACKAGE_PATH中的内容来定位的,所以不能定位到其地方。
1.3.3 切换到ROS日志目录
$ roscd log
这将切换到ROS的日志文件夹,如果没有运行过任何ROS程序的话,会提示不存在该目录。
1.3.4 列出包目录 rosls
$ rosls package_name
这将不需要绝对路径名只需要包名称就可以切换到包目录,同样支持TAB补全。
1.3.5 TAB补全
类似UNIX rosls和roscd可以自动补全,通过TAB键。
1.4 复习
你可能已经注意到了ROS工具的命名规则了;
rospack=ros+pack(age)
roscd=ros+cd
rosls=ros+ls
这种命名模式(naming pattern)适用(hold for)于很多ROS工具。