Tengo un guión que comienza así
#!/bin/bash
VALKYRIE=~/myProjects/valkyrie
source $VALKYRIE/cluster.conf
pero cuando lo ejecuto vuelve
line 2: ~/myProjects/valkyrie/cluster.conf: No such file or directory
pero el archivo existe y cuando lo ejecuto source ~/myProjects/valkyrie/cluster.conf
funciona bien. ¿Alguna idea? Configuré la VALKYRIE
variable en otro lugar para que el código duro en la ruta no sea una opción
No, no ayuda.
—
Khoi
Creo que tiene algo que ver con
—
Sparhawk
~
no expandirse adecuadamente. Cuando ejecuto su script con una ruta falsa intencionalmente, el error no dice ~
, pero expande la ruta. ¿Puedes intentar reemplazar el ~
en tu script con la ruta absoluta? Además, intente ejecutar lo siguiente en un script echo ~
.
También puedes probar en
—
Sparhawk
$HOME
lugar de ~
.
@Khoi Eso lo explica.
—
geirha 01 de
~/.pam_environment
no es un script de shell, por lo que no hace las cosas comunes que esperaría de un shell, como la expansión de tilde y la expansión de parámetros, por lo que ~
ni $HOME
será reemplazado. Si mueve esa línea a su ~/.profile
lugar y agrega export
al frente, debería funcionar.
source "${VALKYRIE}/cluster.conf"
.