1.ROS命令概述
ROS可以通過在shell環境中輸入命令來進行文件系統的使用、源代碼編輯、構建、調試和功能包管理等。為了正確使用ROS,除了基本的Linux命令之外,還需要熟悉ROS專用命令。為了熟練掌握ROS的各種命令,我們對每個命令的功能進行了簡單的描述,並給出了例子。在介紹每條命令時,考慮到使用的頻率和重要性,標了星級評分。雖然很難從一開始就很熟練地使用所有的命令,但是隨着使用的次數增多,讀者會發現越來越方便快捷地使用各個ROS命令。
2.ROS shell命令
ROS shell命令又被稱為rosbash。這使我們可以在ROS開發環境中使用Linux中常用的bash shell命令。我們主要使用前綴是ros且帶有多種后綴的命令,例如cd、pd、d、ls、ed、cp和run。相關命令如下。
命令 | 重要度 | 命令釋義 | 詳細說明 |
roscd | ★★★ | ros+cd(changes directory) | 移動到指定的ROS功能包目錄 |
rosls | ★☆☆ | ros+ls(lists files) | 顯示ROS功能包的文件和目錄 |
rosed | ★☆☆ | ros+ed(editor) | 編輯ROS功能包的文件 |
roscp | ★☆☆ | ros+cp(copies files) | 復制ROS功能包的文件 |
想要使用ROS shell命令,需要用以下命令安裝rosbash,並且只能在設置了source /opt/ros/<rosdistribution>/setup.bash的終端窗口中可以使用。
sudo apt-get install ros-<ros distribution>-rosbash
我們來看看其中相對常見的roscd、rosls和rosed命令。
3.roscd:移動ROS目錄
roscd [功能包名稱]
這是一個移動到保存有功能包的目錄的命令。該命令的基本用法是在roscd命令之后將功能包名稱寫入參數。在以下示例中,turtlesim功能包位於安裝ROS的目錄中,但是,如果將創建的功能包名稱(例如,我自己創建的beginner_tutorials)作為參數,則會移至您指定的功能包的目錄。這是在使用基於命令行的ROS時常用的命令。
請注意,要運行此示例並獲得相同的結果,必須安裝相關功能包ros-indigo-turtlesim。如果未安裝,請使用以下命令進行安裝。
sudo apt-get install ros-indigo-turtlesim
如果已經安裝,將可以看到如下所示的功能包的消息。
4.rosls:ROS文件列表
rosls [功能包名稱]
該命令查看指定的ROS功能包的文件列表。您可以使用roscd命令移動到功能包,然后使用正常的ls命令執行相同的功能,但有時需要立即查看。實際中並不經常使用。
5.rosed:ROS編輯命令
rosed [功能包名稱] [文件名稱]
該命令用於編輯功能包中的特定文件。運行時,它會用用戶設置的編輯器打開文件。用於快速修改相對簡單的內容。這時用到的編輯器可以在~/.bashrc文件中進行指定,如:export EDITOR=‘emacs -nw’。如前所述,它用於需要在命令窗口中直接修改的簡單任務,因此不推薦用於除此之外的編寫程序的任務。這不是一個經常使用的命令。
rosed turtlesim package.xml
運行后: