Linux:Ubuntu 18.04 (Bionic)
ROS:ROS Melodic Morenia
1. roscd和cd的区别
cd
,change directory,更改目录。roscd
和 cd
命令都是用于切换到指定目录的命令。它们之间的不同点是:
cd
是 UNIX / Linux 系统的命令;roscd
是 ROS 系统的命令,是rosbash
命令集的一部分;roscd
只能切换到那些路径已经包含在ROS_PACKAGE_PATH
环境变量中的软件包。
2. 举例说明
假设你已经创建好了一个catkin工作空间
和 一个名为beginner_tutorials
的catkin软件包。
cd ~/catkin_ws/src/beginner_tutorials/
roscd beginner_tutorials
通过对比,roscd相较于cd,输入命令更加快捷。
3. 注意事项
如果roscd提示类似于roscd: No such package/stack 'beginner_tutorials'
的话,你需要按照创建catkin工作空间后面的步骤使环境变量生效:
cd ~/catkin_ws
source devel/setup.bash
roscd beginner_tutorials
但是每次进行catkin_make
编译后,都要使用source devel/setup.bash
刷新环境,否则就会出现上面那样的问题。这个问题怎么解决呢?其实很简单,只需要将source ~/catkin_ws/devel/setup.bash
命令添加到.bashrc
脚本文件中,让系统自动刷新工作空间即可。
echo “source ~/catkin_ws/devel/setup.bash” >> ~/.bashrc
我们可以通过如下命令打开bashrc
文件,source ~/catkin_ws/devel/setup.bash
命令在脚本的最后一行.
gedit ~/.bashrc
4. 参考
[1] ROS.org. ROS教程[EB/OL]. [2022-6-29]. http://wiki.ros.org/cn/ROS/Tutorials