1. 准备工作
    需要使用如下命令安装ros的教程:

    $ sudo apt-get install ros-<distro>-ros-tutorials
    

    其中,distro为所用ros的发行版本,该教程使用kinetic。

    $ sudo apt-get install ros-kinetic-ros-tutorials
    
  2. ROS文件系统概览
    1. Packages:ROS文件系统由许多Package组成,每个package可能包含库(Libraries),可执行程序,脚本或者其它人工编写的材料。
    2. Manifests (package.xml):包描述文件。
  3. 文献系统工具命令
    1. rospackrospack用以获得包(Package)的相关信息,在该教程中仅给出rospack find的使用,该命令返回一个包的路径
      用法:

      $ rospack find [package_name]
      

      例如:

      $ rospack find roscpp
      

      返回为:

      YOUR_INSTALL_PATH/share/roscpp
      

      在笔者的机子上返回为:

      /opt/ros/kinetic/share/roscpp
      
    2. roscd
      roscd是rosbash的一部分,用以改变目录,或进入某个目录,与cd命令类似。
      例如:
      $ roscd roscpp
      

      表示当前目录变为roscpp目录。

      使用pwd命令显示当前目录,则为:

      /opt/ros/kinetic/share/roscpp
      

      注意,ros工具命令只能识别出在环境变量ROS_PACKAGE_PATH中列出的包,你可以通过改变环境变量将额外的包加入到ROS_PACKAGE_PATH 路径中。

      可以使用如下命令查看该环境变量中包含哪些路径:

      $ echo $ROS_PACKAGE_PATH
      

      在本机中返回如下:

      /home/yangbo/mybot_ws/src:/home/yangbo/project_ws/src:/home/yangbo/catkin_ws/src:/home/yangbo/hector_quadrotor_tutorial/src:/opt/ros/kinetic/share:/home/yangbo/px4/Firmware:/home/yangbo/px4/Firmware/Tools/sitl_gazebo
      

      每个用冒号分开。

    3. roscd log
      该命令进入ros的日志文件目录,若没有日志文件目录,则会给出错误提示。
    4. rosls
      rosls 也是 rosbash的一部分,用于列出一个package下的所有文件和目录。
      例如使用如下命令查看roscpp_tutorials中的所有文件和目录:
      $ rosls roscpp_tutorials
      

      返回为:

      cmake  launch  package.xml  srv
      
    5. TAB自动完成
      ros命令行工具支持TAB自动完成,例如你记不住每个包的全称,但是知道开头,可以用TAB自动补全。

      $ roscd roscpp_tut<<< now push the TAB key >>>
      

      例如输入roscd roscpp_tut然后按TAB键,则会自动完成roscpp_tut开头的包。

      roscd roscpp_tutorials/
      

      如果有多个包名和开头的一致,则会自动完成和开头最接近的一个,再按一下TAB则会列出所有与开头匹配的选项,例如:

      roscd tur
      

      按了TAB则自动补全为:

      roscd turtle
      

      再按一下TAB则列出所有以tur开头的包:

      turtle_actionlib/        turtlebot_navigation/    turtlesim/
      turtlebot_bringup/ turtlebot_simulator/ turtle_tf/
      turtlebot_capabilities/ turtlebot_stage/ turtle_tf2/
      turtlebot_description/ turtlebot_stdr/
      turtlebot_gazebo/ turtlebot_teleop/

ROS学习笔记3-基础课程之文件系统向导的更多相关文章

  1. ROS学习笔记七:在ROS中使用USB摄像头

    下面是一些USB摄像头的驱动(大多数摄像头都支持uvc标准): 1 使用软件库里的uvc-camera功能包 1.1 检查摄像头 lsusb ----------------------------- ...

  2. ROS学习笔记八:基于Qt搭建ROS开发环境

    1 前言 本文介绍一种Qt下进行ROS开发的完美方案,使用的是ros-industrial的Levi-Armstrong在2015年12月开发的一个Qt插件ros_qtc_plugin,这个插件使得Q ...

  3. ROS学习笔记1-引言

    该学习笔记参考ROS官方wiki的内容,见:http://wiki.ros.org/ROS/Introduction 什么是ROSROS的全称是Robot Operating System,即机器人操 ...

  4. ROS学习笔记

    创建ros工作环境: mkdir -p ~/catkin_ws/src //建立项目目录,同时生成src文件夹 cd ~/catkin_ws/ //进入项目目录 catkin_make //编译项目, ...

  5. ROS学习笔记2-基本概念

    本笔记来源于:http://wiki.ros.org/ROS/Concepts ROS文件系统级别文件系统级别主要包含了你能在ROS的磁盘上遇到的资源,包括: 包(Packages):包是ROS中资源 ...

  6. Linux系统安全学习笔记(1)-- 文件系统类型

    今天看了一个关于Linux系统安全的视频教程,这个教程有很多的知识点,我会分几篇博文将我的笔记分享出来. 首先是关于Linux文件系统类型的一些知识,Linux有四种常见的文件系统类型(网上大多数是3 ...

  7. I.MX6Q(TQIMX6Q/TQE9)学习笔记——内核启动与文件系统挂载

    经过前面的移植,u-boot已经有能力启动内核了,本文主要来看下如何通过之前移植的u-boot来启动内核.如果按照前面的文章完成了LTIB 的编译,那么,Linux的内核应该就会出现rpm/BUILD ...

  8. ROS学习笔记十二:使用gazebo在ROS中仿真

    想要在ROS系统中对我们的机器人进行仿真,需要使用gazebo. gazebo是一种适用于复杂室内多机器人和室外环境的仿真环境.它能够在三维环境中对多个机器人.传感器及物体进行仿真,产生实际传感器反馈 ...

  9. ROS学习笔记十:URDF详解

    Unified Robot Description Format,简称为URDF(标准化机器人描述格式),是一种用于描述机器人及其部分结构.关节.自由度等的XML格式文件. 一.URDF语法规范 参见 ...

随机推荐

  1. 01Git复习笔记

    一.Git简介 Git是目前世界上最先进的分布式版本控制系统(没有之一). SVN是集中式版本控制工具. 有哪些GIT网站? https://github.com/ 全球最大的开源项目网站. http ...

  2. 实现纸牌游戏的随机抽牌洗牌过程(item系列几个内置方法的实例)

    实现纸牌游戏的随机抽牌洗牌过程(item系列几个内置方法的实例) 1.namedtuple:命名元组,可以创建一个没有方法只有属性的类 from collections import namedtup ...

  3. word2vec生成后缀名model文件处理

    引入from gensim.models import word2vec 读取test02.model里面的词· model = word2vec.Word2Vec.load('test02.mode ...

  4. 「快学Docker」Docker简介、安装和Hello World实现

    前言 Docker已经成为了一门炙手可热的技术,每个程序员(特别是后端程序员)都应该学习下Docker这门技术. Docker是什么 来自官网的定义:Docker是以Docker容器为资源分割和调度的 ...

  5. c++刷算法的好处

    写再最前面:摘录于柳神的笔记 在已经学习过C语⾔的前提下,学习C++并使⽤它刷算法的学习成本⾮常低-只需要⼏个⼩时就可 以学会- C++向下兼容C,C语⾔⾥⾯的语法完全可以在C++⽂件中运⾏,所以学习 ...

  6. R rep() 函数

    函数 rep(x,...) rep(x,times = n) 将向量 x 重复 n 次 rep(x,each = n) 将向量 x 的每个元素重复 n 次 在参数缺省情况下,为参数 times

  7. Using webpack-dev-server

    官方讲解地址:https://webpack.js.org/guides/development/#using-webpack-dev-server The webpack-dev-server pr ...

  8. angular 自定义服务封装自定义http请求

    在angular中将http请求,放置在一起封装成服务,可减少代码重复,方便使用 var ngpohttprest = angular.module('ngpohttprest', []); ngpo ...

  9. C语言笔记 14_标准库&assert&ctype&errno&float&limits

    C 标准库 <assert.h> 简介 C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息. 已定义的宏 ass ...

  10. 使用oracle 的 PL/Sql 定时执行一个存储过程

    CSDN日报20170322--<关于软件研发的一些体会总结> 同步博客至 CSDN ,让更多开发者看到你的文章 看微博技术大咖解析互联网应用架构实战 使用oracle 的 PL/Sql ...