1 预备工作
首先安装一个ros-kinetic-ros tutorials
$ sudo apt-get install ros-<distro>-ros-tutorials
其中<distro>
替换成自己的ros版本。
2 ros包文件系统概览
- packages:packages是ros软件的基本组织形式,每个包包括仓库,可执行文件,脚本和其他文件。
- manifests(package.xml):manifest是一个packages的详细描述,主要定义包与包之间的依赖关系,以及版本号,维护者,证书等。
3 文件系统工具
3.1 rospack
rospack
可以找到某个packages的信息,例如使用find
命令查找packages。
标准用法:
$ rospack find [package_name]
举例:
$ rospack find roscpp
会得到:
YOUR_INSTALL_PATH/share/roscpp
如果安装的是kinetic
:
/opt/ros/kinetic/share/roscpp
3.2 roscd
roscd
可以快速定位到某一个package。
用法:
$ roscd [locationname[/subdir]]
切换到roscpp
目录:
$ roscd roscpp
然后执行pwd
查看具体位置:
/opt/ros/kinetic/share/roscpp
roscd
也可以移动到一个package的子目录下:
$ roscd roscpp/cmake
$ pwd
得到:
/opt/ros/kinetic/share/roscpp/cmake
3.3 roscd log
可以进入ros存放log文件的位置,如果运行过ros程序:
$ roscd log
会得到:
/home/lk/.ros/log/d4e2a628-9963-11e9-8f24-d46d6d97e028
3.4 rosls
可以直接进入package所在的文件夹。
标准用法:
$ rosls [locationname[/subdir]]
举例:
$ rosls roscpp_tutorials
得到:
cmake launch package.xml srv
3.5 tab代码补全
如果存在该文件,tab一次可以补全命令。
如果忘了名字,可以tab两次查看可选的输入,按q
退出。
4 总结
- rospack = ros + pack(age)
- roscd = ros + cd
- rosls = ros + ls