ROS2Tool.sh:ROS 2命令行工具的瑞士军刀
gitee仓库地址: https://gitee.com/futurelei/ros2_tools
概述
ros2tool.sh是一个专为ROS 2开发者设计的综合性命令行工具脚本,旨在简化ROS 2系统的监控、调试和管理工作。- 通过集成ROS 2原生命令行工具的核心功能,并添加友好的交互式界面,它让复杂的ROS 2系统调试变得直观高效。(不必手动记忆和敲下ros2 topic xxx等命令)
- 提供命令行直接调用、以及交互式界面两种方式。
工具定位
在复杂的ROS 2系统(如多机器人协同或自动驾驶感知模块)中,命令行工具是开发者的"瑞士军刀"。ros2tool.sh 将这些分散的工具整合到一个统一的交互式界面中,提供比图形化工具更轻量、响应更快的操作体验,特别适合在资源受限的嵌入式设备上使用。
功能特性
- 节点管理:查看、详细信息、发布者/订阅者
- 话题管理:查看、发布、echo、频率/带宽监控
- 服务管理:查看、调用服务
- 参数管理:查看、获取/设置参数值
- 动作管理:查看、发送目标
- 接口查看:消息/服务/动作类型定义
使用方式
交互式模式(推荐)
bash
cd ~/ros_workspaces/ros2_ws/src/lyric_acns2
./ros2tool.sh
命令行模式
bash
# 查看帮助
./ros2tool.sh -h
# 列出所有节点
./ros2tool.sh -n
# 列出所有话题
./ros2tool.sh -t
# 查看指定节点信息
./ros2tool.sh -i /node_name
# 查看指定话题信息
./ros2tool.sh --topic-info /topic_name
命令行参数
| 参数 | 说明 |
|---|---|
-h, --help |
显示帮助信息 |
-n, --nodes |
列出所有节点 |
-t, --topics |
列出所有话题 |
-s, --services |
列出所有服务 |
-a, --actions |
列出所有动作 |
-p, --params |
列出所有参数 |
-i, --info NODE |
查看节点信息 |
--topic-info TOPIC |
查看话题信息 |
--service-info SERVICE |
查看服务信息 |
--publish TOPIC TYPE DATA |
发布话题消息 |
交互式菜单说明
启动后显示主菜单:

进入子菜单后:
-
先显示列表(节点/话题/服务等)



-
选择具体项目后显示操作菜单



-
选择操作执行相应功能



注:本文档基于实际ROS 2开发经验编写,所有功能均经过实际项目验证。工具持续更新中,最新版本请关注项目仓库。