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.conffunciona bien. ¿Alguna idea? Configuré la VALKYRIEvariable 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
$HOMElugar de ~.
@Khoi Eso lo explica.
—
geirha 01 de
~/.pam_environmentno 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 $HOMEserá reemplazado. Si mueve esa línea a su ~/.profilelugar y agrega export al frente, debería funcionar.
source "${VALKYRIE}/cluster.conf".