Tengo un archivo de script script1.sh
como se muestra a continuación:
#!/usr/bin/env bash
cd /home/userA/scripts
. r1.sh
cuando abro manualmente una terminal y la ejecuto, . script.sh
funciona bien.
Pero cuando creé el siguiente iniciador .desktop para ejecutarlo, dice eso ROSRUN command not found
.
Este es el .desktop
archivo:
[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
Y así es como r1.sh
se ve:
#!/bin/bash
rosrun r1 r1 \
-p1 $p1 \
-p2 $p2 \
-p3 $p3
Entonces, si alguien pudiera indicarnos cuál puede ser la razón detrás de que esto suceda. Como no sé por qué se ejecuta sin problemas sin que aparezca este error al abrir manualmente una terminal y ejecutarla, y ¿por qué aparece el error cuando uso .desktop
el iniciador?
Respuesta1
Como descubrí en una charla con el autor de la pregunta, rosrun
es un comando que definió en su archivo .bashrc
.
Agregue la misma definición para rosrun a su script1.sh
y debería funcionar.