(三)介绍简单的ROS命令
1.ROS文件系统中的基本概念
Packages: Package是ROS系统中最底层最基本的组织,里面存放各种文件:库、工具、可执行文件等.
Manifest: 一个package描述xml文件,定义package之间的依赖关系.
Stacks: package的集合,比package这个概念高一级别
Stack Manifest: 作用类似package manifest文件,但是它是针对stack的.
在文件系统中很容易识别package和stack:
package是一个包含 manifest.xml 文件的目录.
stack是一个包含 stack.xml 文件的目录.
2.文件系统工具
ROS中大量代码分散在众多的packages和stacks之中. 命令工具ls 和 cd已不能满足检索要求。因此ROS提供了一套自己的命令工具来完成与这些命令相似的工作。
先下载一个 ros-tutorials 程序包:
$ sudo apt-get install ros-indigo-ros-tutorials
(1) 使用rospack和rosstack
rospack 查找软件包。返回信息:软件包的路径。 $ rospack find [package_name]
rosstack 查找stack。返回信息:stack的路径。 $ rosstack find [stack_name]
$ rospack find roscpp
结果:/opt/ros/indigo/share/roscpp
(2) 使用roscd
【1】直接切换(cd)到某个package或者stack的目录.
$ roscd [locationname[/subdir]]
$ roscd roscpp
为了验证我们已经切换到了roscpp p软件包目录. 我们使用unix的命令查看路径pwd:
$ pwd
结果:/opt/ros/indigo/share/roscpp
(3)使用 rosls
作用是列出指定的package或stack中的文件及目录.
$ rosls [locationname[/subdir]]
$ rosls roscpp_tutorials
结果:cmake launch package.xml srv
(5)Tab 自动完成输入
当要输入一个完整的软件包名称时会变得比较繁琐,ROS工具支持TAB 自动完成输入的功能。
Eg:roscd roscpp_tut<<< 现在请按TAB键 >>> ,命令行中应该会自动补充剩余部分。
总结:
ROS命令工具的的命名方式:
rospack = ros + pack(age)
roscd = ros + cd
rosls = ros + ls
(三)介绍简单的ROS命令的更多相关文章
- ROS Learning-004 beginner_Tutorials 介绍简单的ROS命令
ROS Indigo beginner_Tutorials-03 介绍简单的ROS命令 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14.04 ...
- vi简单快键命令
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...
- Redis笔记(三):Redis常用命令
连接测试 连接本地服务器 语法 $ redis-cli 实例 启动 redis 客户端,打开终端并输入命令 redis-cli.该命令会连接本地的 redis 服务. $redis-cli redis ...
- 一、Linux概述 二、Linux的安装 三、Linux的常用命令(重点)
一.Linux概述###<1>操作系统 OS,管理和控制 计算机的 硬件和软件资源的 计算机程序. 最基本的系统软件. 是用户和计算机交互的桥梁,是硬件和软件交互的桥梁. 操作系统:she ...
- 装服务器,测试数据库,简单的maven命令
[说明]今天总体回顾一下:大概是早上装服务器,下午测试数据库,晚上了解简单的maven命令 一:今日完成 1)在远程服务器的tomcat 设置好管理员的登录账号 2)登录tomcat 的项目管理 查看 ...
- ZooKeeper 系列(三)—— Zookeeper常用 Shell 命令
一.节点增删改查 1.1 启动服务和连接服务 1.2 help命令 1.3 查看节点列表 1.4 新增节点 1.5 查看 ...
- ZooKeeper学习之路(三)—— Zookeeper常用Shell命令
一.节点增删改查 1.1 启动服务和连接服务 # 启动服务 bin/zkServer.sh start #连接服务 不指定服务地址则默认连接到localhost:2181 zkCli.sh -serv ...
- ZooKeeper系列(三)—— Zookeeper 常用 Shell 命令
一.节点增删改查 1.1 启动服务和连接服务 # 启动服务 bin/zkServer.sh start #连接服务 不指定服务地址则默认连接到localhost:2181 zkCli.sh -serv ...
- C语言程序设计(三) 简单的算术运算和表达式
第三章 简单的算术运算和表达式 算数运算符:一元.二元.三元(条件运算符) 1/2是整型除法,1.0/2是浮点数除法 求余运算(%)限定参与运算的两个操作数必须为整数,不能对两个实型数据进行求余运算 ...
随机推荐
- ESB初步配置文件认识
每个项目的都有各自的场景,但是其实往小处说,场景的处理基本都是很相似,之前做copy文件的程序,其实就是一种很常见的ETL的过程(转移文件,异构系统通过文件系统交换数据,存在数据同步). 了解一下ET ...
- PHP mysqli_fetch_object() 函数实例讲解
定义和用法 mysqli_fetch_object() 函数从结果集中取得当前行,并作为对象返回. 注释:该函数返回的字段名是区分大小写的. 语法 mysqli_fetch_object(result ...
- 让“懒惰” Linux 运维工程师事半功倍的 10 个关键技巧!
好的Linux运维工程师区分在效率上.如果一位高效的Linux运维工程师能在 10 分钟内完成一件他人需要 2 个小时才能完成的任务,那么他应该受到奖励(得到更多报酬),因为他为公司节约了时间,而时间 ...
- php中csv文件的下载
使用header头部定义就可以,一下为阿拉蕾项目文件下载的部分代码:$user_infos = “”;if(!empty($download)) { header("Content-type ...
- python入门-用户输入
1 input()函数来实现用户输入,程序在等待输入的时候会终止,获取用户的输入后继续 message = input("tell me something,and I will repre ...
- 使用amaze ui模板全过程
amaze ui基于gulp构建,所以现在安装gulp需要的环境,gulp使用npm安装,npm基于node.js 所以一切从node.js开始 1 下载对应的node.js 打开 https://n ...
- spring mvc 解决json 不能转换的问题
在要转的实体上加一个 @JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" ...
- Java工具类实现校验公民身份证的有效性
转自:https://www.oschina.net/code/snippet_1859292_39120 1 package com.tg.user.controller; import java. ...
- django 使用 可视化包-Pyechart
Echarts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化.pyecharts 是一个用于生成 Echarts 图表的类库.实际上就是 Echarts 与 Python 的对接. 本次使 ...
- JS时间转时间戳,时间戳转时间。时间显示模式。
函数内容 // 时间转为时间戳 function date2timestamp(datetime) { var timestamp = new Date(Date.parse(datetime)); ...