Eu tenho um script que começa assim
#!/bin/bash
VALKYRIE=~/myProjects/valkyrie
source $VALKYRIE/cluster.conf
mas quando eu corro ele retorna
line 2: ~/myProjects/valkyrie/cluster.conf: No such file or directory
mas o arquivo existe e quando eu o executo source ~/myProjects/valkyrie/cluster.conf
ele corre bem. Qualquer ideia? Defino a VALKYRIE
variável em outro lugar, para que o código rígido no caminho não seja uma opção.
não, isso não ajuda.
—
Khoi
Eu acho que tem algo a ver com
—
Sparhawk
~
não expandir adequadamente. Quando executo seu script com um caminho intencionalmente falso, o erro não diz ~
, mas expande o caminho. Você pode tentar substituir o ~
no seu script pelo caminho absoluto? Além disso, tente executar o seguinte em um script echo ~
.
Você também pode tentar em
—
Sparhawk
$HOME
vez de ~
.
@Khoi Isso explica tudo.
—
Geirha
~/.pam_environment
não é um script de shell, por isso não faz as coisas comuns que você esperaria de um shell, como expansão de til e expansão de parâmetros, portanto, ~
nem $HOME
serão substituídos. Se você mover essa linha para ~/.profile
, e adicionar export
na frente, ela deve funcionar.
source "${VALKYRIE}/cluster.conf"
,.