El comando fuente no funciona cuando se usa dentro del script de Shell

El comando fuente no funciona cuando se usa dentro del script de Shell

Estoy usando un instalador que agrega una variable de entorno en el ~/.bash_profilearchivo.

Cuando inicio el servidor Jetty, no puedo encontrar esa entrada...

cuando corro

$ source ~/.bash_profile

recarga el ~/.bash profilearchivo y el servidor se inicia correctamente sin ningún problema.

El problema es que mi cliente no va a iniciar una nueva sesión de shell ni actualizará manualmente el ~/.bash_profilearchivo.

Intenté agregar el source ~/.bash_profilecomando dentro de un script de shell al que llamo cuando invoco el script de inicio del servidor Jetty, pero tampoco funciona.

¿Hay alguna otra forma de recargar ~/.bash_profilela sesión actual? Cualquier información que me puedan brindar se los agradecería mucho.

Respuesta1

Por lo general, bash no ejecuta un script de shell (excepto cuando lo organiza explícitamente).

Tenga en cuenta que en muchos sistemas Linux /bin/sh ahora es dashun sourcecomando de shell no estándar que se importó desde csh, un shell como dash no lo admite.

El comando de punto definido por POSIX ( .) debería funcionar siempre que el parámetro de archivo que le pase no contenga extensiones no estándar.

información relacionada