Создайте TEST_HOME
используя одинарные кавычки, чтобы предотвратить расширение bash:
$ TEST_HOME='/Users/krysto/$MYPATH/$DATA_DIR'
$ echo $TEST_HOME
/Users/krysto/$MYPATH/$DATA_DIR
Затем можно использовать eval, чтобы расширить его. В качестве примера:
$ MYPATH=dir1/dir2
$ DATA_DIR=data/dir
$ eval echo $TEST_HOME
/Users/krysto/dir1/dir2/data/dir
Пара замечаний: Соглашение состоит в том, что важные системные переменные, такие как PATH
или HOME
, все в верхнем регистре. Если вы хотите избежать перезаписи одного из них, сделайте ваши переменные строчными. В частности, переопределение PATH может оставить оболочку, в которой вы находитесь, в основном неработоспособной.