在前幾篇我們知道了要怎麼自定義訊息格式,其中有用到一些command line 指令,在這篇做個整理:
基本上rosmsg和rossrv指令的差別,真的就只是前面的msg和srv而已,使用rosmsg
/rossrv
或rosmsg -h
/rossrv -h
就可以看到跟rosmsg/rossrv相關的指令了,不過比較常用的應該就只有list和show啦:
$ rosmsg list
$ rossrv list
這個指令就是顯示目前已定義的msg/srv有哪些,都蠻多的,會看得眼花撩亂@@ 所以需要下一個指令: packages
$ rosmsg packages
$ rossrv packages
這個指令是用來看目前已定義的mag/srv被放在哪些package底下,所以只會看到package名稱,例如這樣:
可以看到有這麼多個package有自定義的msg,接下來就只要選擇其中某個package就可以看到其底下的msg/srv囉!
$ rosmsg package <package_name>
$ rossrv package <package_name>
這個指令延續上一個,就是用來查看某個特定的package底下有甚麼樣的msg/srv可以用,如圖所示:
可以看到我的beginner_tutorials底下就有兩個msg可以用啦! 也就是my_msg和test。
$rosmsg show <package_name>/<msg_name>
$rosmsg info <package_name>/<msg_name>
$rossrv show <package_name>/<srv_name>
$rossrv info <package_name>/<srv_name>
show跟info的指令完全一樣,就是在表示該msg/srv的定義,所以用自己習慣的那個就好了! 小妹我是比較喜歡show啦 XD
可以看到show跟info執行的結果一模一樣,不知道為什麼要分兩個就是了,可能是版本整合的關係吧~
好的最後就來做個小結吧,我覺得可以自定義message真的蠻好用的,就像我們以前在做專案的時候要把資料包成物件一樣,也可以透過這些指令清楚看到message是怎麼定義的,覺得很方便耶!