值得收藏... |
ROS文件系统工具 在ROS中程序代码是分布在众多ROS软件包当中,当使用命令行工具(比如ls和cd)来浏览时会非常繁琐,因此ROS提供了专门的命令工具来简化这些操作。 在Linux下当要输入一个完整的软件包名称时比较繁琐,我们会使用Tab补齐,在ROS中同样支持这个功能,善用这个功能增加生产效率。 一、Rospack=ros+pack(age) 功能:rospack允许你获取软件包相关信息 格式:rospack find [package-name];package-name是包名称 例程:rospack find roscpp 返回结果:在ubuntu12.04下,返回/opt/ros/hydro/share/roscpp 二、Roscd=ros+cd 功能:对ROS文件系统允许利用包的名字直接切换到相应的文件目录下。 格式:roscd [locationname[/subdir]],[locationname[/subdir]]是[本地包名称/子目录] 例程:roscd roscpp 返回结果:就直接跳到那个目录下了,输入pwd看到 /opt/ros/hydro/share/roscpp 备注: roscd将只能打开存在与环境变量ROS_PACKAGE_PATH中的目录及其子目录 使用命令 ROS_PACKAGE_PATH 或 export | grep ROS 查看 ROS_PACKAGE_PATH后的文件。 显示结果: /opt/ros/hydro /share:/opt/ros/hydro/stacks,中间用冒号隔开。 其它roscd用法: 1、直接切换到一个软件包或软件包集中 命令:roscd roscpp/cmake Cmake为roscpp下的子目录 2、直接切换到ROS保存日记文件的目录下 命令:roscd log 如果没有运行过任何ROS程序,则会报错,负责跳转到改目录下 三、Rosls=ros+ls 功能:直接利用包的名字,去列举包中的所有文件即文件夹,而不用使用绝对路径。它的使用和roscd是一样的,只有存在于ROS_PACKAGE_PATH中的目录及其子目录才能使用这个命令。 格式:roscd [locationname[/subdir]],[locationname[/subdir]]是[本地包名称/子目录] 例程:rosls_roscpp_tutorials 返回结果:列出目录roscpp_tutorials下的所有文件。 |