script.sh se ejecuta de manera diferente cuando se abre manualmente la terminal y cuando se usa .desktop launcher

script.sh se ejecuta de manera diferente cuando se abre manualmente la terminal y cuando se usa .desktop launcher

Tengo un archivo de script script1.shcomo se muestra a continuación:

#!/usr/bin/env bash 

cd /home/userA/scripts

. r1.sh

cuando abro manualmente una terminal y la ejecuto, . script.shfunciona bien.

Pero cuando creé el siguiente iniciador .desktop para ejecutarlo, dice eso ROSRUN command not found.

Este es el .desktoparchivo:

[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.shse 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 .desktopel iniciador?

Respuesta1

Como descubrí en una charla con el autor de la pregunta, rosrunes un comando que definió en su archivo .bashrc.

Agregue la misma definición para rosrun a su script1.shy debería funcionar.

información relacionada