본문 바로가기

Software/Ubuntu and Mint

ROS2에서 ros domain id를 터미널 프롬프트에 표현하기

여러 로봇을 ROS2에서 다루는 경우, 터미널마다 ros domain id가 혼돈되어 실수하는 경우가 자주 있죠. 이럴때 터미널에서 도메인 아이디를 보기좋게 표현되는 방법을 써보면 좋습니다.

바로 이렇게요^^ 일단 터미널에서 아래 코드를 넣어보죠.

GREEN='\[\e[1;32m\]' 
BLUE='\[\e[1;34m\]' 
NC='\[\e[0m\]'
PS1="${BLUE}(ID: \${ROS_DOMAIN_ID:-unset})${GREEN}\u${NC}${GREEN}@\h${NC}:${BLUE}\w${NC}\$ "

이 코드를 최초 디폴트 터미널에 넣어보겠습니다.

그리고 나면 

이렇게 됩니다. 만약 unset이 아니라, ros2가 동작하면 default가 0이니 0으로 하겠다고 하면, 

GREEN='\[\e[1;32m\]' 
BLUE='\[\e[1;34m\]' 
NC='\[\e[0m\]'
PS1="${BLUE}(ID: \${ROS_DOMAIN_ID:-0})${GREEN}\u${NC}${GREEN}@\h${NC}:${BLUE}\w${NC}\$ "

이렇게 하면 됩니다. 실행 결과는 

잘 되네요. 이제 ros domain id를 export로 변경해보죠. 

짠~^^ 이제 이 내용을 bashrc에 추가합니다.

추가하는 방법은 위 그림은 nano를 사용했지만, 아무 편집기를 사용하시면 됩니다. 그리고 나면 이제 터미널을 켤때마다 적용될겁니다.^^

반응형