źródło skryptu bash: brak takiego pliku lub katalogu

8

Mam skrypt, który zaczyna się w ten sposób

#!/bin/bash
VALKYRIE=~/myProjects/valkyrie
source $VALKYRIE/cluster.conf

ale po uruchomieniu wraca line 2: ~/myProjects/valkyrie/cluster.conf: No such file or directory

ale plik istnieje i kiedy uruchomię source ~/myProjects/valkyrie/cluster.conf , działa dobrze. Dowolny pomysł? Ustawiam zmienną VALKYRIE w innym miejscu, więc kod twardy w ścieżce nie jest opcją.

    
zadawane Khoi 01.06.2013, 05:30
źródło

1 odpowiedź

8

~ nie wydaje się poprawnie rozwijać. Kiedy uruchomię twój skrypt z celowo fałszywą ścieżką, błąd nie mówi ~ , ale rozszerza ścieżkę (tj. /home/sparhawk/fakepath nie ~/fakepath . Możesz spróbować użyć $HOME zamiast ~ lub użyć zamiast tego pełna ścieżka w skrypcie.

(Nie jestem pewien, dlaczego ~ nie działa w twoim systemie, ponieważ twój skrypt działa dobrze dla mnie.)

    
odpowiedział Sparhawk 01.06.2013, 06:21
źródło

Przeczytaj inne pytania na temat tagów