ROS文件系统级指的是在硬盘上ROS源代码的组织形式,ROS 的文件系统本质上都还是操作系统文件,可以使用Linux命令来操作这些文件,文件操作,包含增删改查与执行等操作,ROS文件系统的一些常用命令如下:
1.增加
catkin_create_pkg 自定义包名 依赖包 === 创建新的ROS功能包
sudo apt install xxx === 安装 ROS功能包
2.删除
sudo apt purge xxx ==== 删除某个功能包
3.查找
rospack list === 列出所有功能包
rospack find 包名 === 查找某个功能包是否存在,如果存在返回安装路径
roscd 包名 === 进入某个功能包
rosls 包名 === 列出某个包下的文件
apt search xxx === 搜索某个功能包
4.修改
rosed 包名 文件名 === 修改功能包文件
需要安装 vim
比如:rosed turtlesim Color.msg
5.执行
(1)roscore
roscore === 是 ROS 的系统先决条件节点和程序的集合, 必须运行 roscore 才能使 ROS 节点进行通信。
roscore 将启动: ros master、ros 参数服务器、rosout 日志节点
用法:
roscoreCopy
或(指定端口号)
roscore -p xxxxCopy
(2)rosrun
rosrun 包名 可执行文件名 === 运行指定的ROS节点
比如:rosrun turtlesim turtlesim_node
(3)roslaunch
roslaunch 包名 launch文件名 === 执行某个包下的 launch 文件
功能包:功能包是ROS软件中的基本单元,包含ROS节点、库、配置文件等。
功能包清单:每个功能包都包含一个名为package.xml的功能包清单,用于记录功能包的基本信息,包含作者信息、许可信息、依赖选项、编译标志等。
功能包内的文件夹的主要功能如下:
config:放置功能包中的配置文件,由用户创建,文件名可以不同。
include:放置功能包中需要用到的头文件。
scripts:放置可以直接运行的Python脚本。
src:放置需要编译的C++代码。
launch:放置功能包中的所有启动文件。
msg:放置功能包自定义的消息类型。
srv:放置功能包自定义的服务类型。
action:放置功能包自定义的动作指令。
CMakeLists.txt:编译器编译功能包的规则。
package.xml:功能包清单。