script1.sh
아래와 같은 스크립트 파일이 있습니다 .
#!/usr/bin/env bash
cd /home/userA/scripts
. r1.sh
수동으로 터미널을 열고 실행하면 . script.sh
정상적으로 작동합니다.
하지만 실행하기 위해 아래 .desktop 실행 프로그램을 만들었을 때 ROSRUN command not found
.
다음은 파일입니다 .desktop
.
[Desktop Entry]
Version=1.0
Type=Application
Terminal=true
Icon[en_AU]=/home/userA/Pics/pic1.png
Name[en_AU]=automatic
Exec=/home/userA/Desktop/script1.sh
Comment[en_AU]=comment
Name=automatic
Comment=comment
Icon=/home/userA/Pics/pic1.png
그리고 이것은 다음과 r1.sh
같습니다:
#!/bin/bash
rosrun r1 r1 \
-p1 $p1 \
-p2 $p2 \
-p3 $p3
따라서 누구든지 이런 일이 발생하는 이유가 무엇인지 조언해 주시기 바랍니다. 터미널을 수동으로 열고 실행할 때 왜 이 오류가 나타나지 않고 원활하게 실행되는지, .desktop
대신 런처를 사용할 때 오류가 나타나는 이유는 무엇입니까?
답변1
질문자와의 채팅에서 알게 된 것처럼 rosrun
그가 자신의 .bashrc
.
rosrun에 대한 동일한 정의를 추가하면 script1.sh
제대로 작동합니다.