Chcę tylko zrozumieć następujący wiersz kodu w powłoce. Służy do pobierania bieżącego katalogu roboczego. Zdaję sobie sprawę, że $(variable)
nazwa zwraca wartość wewnątrz nazwy zmiennej, ale co $(command)
ma zwrócić? Czy zwraca wartość po wykonaniu polecenia? W takim przypadku możemy użyć `
do wykonania polecenia.
CWD="$(cd "$(dirname $0)"; pwd)"
Te same dane wyjściowe można pobrać z następującego wiersza kodu również w innej wersji powłoki
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
Nie jestem w stanie zrozumieć znaczenia $(cd..
i $(dirname
.
Czy ktoś mógłby mi pomóc dowiedzieć się, jak to polecenie jest wykonywane?
$()
vs``
.: stackoverflow.com/questions/9449778/ ...