Используйте $_OBJC_FILES
. В фигурных скобках Bash явно указывает, где заканчивается имя переменной.
Проблема изоляции переменной среды в сценарии оболочки
1427
Not Rick Astley
Я новичок здесь, но stackoverflow помог мне в прошлом.
Я пишу сценарий оболочки Bash для создания make-файла (начиная с малого).
echo "\ include \$(GNUSTEP_MAKEFILES)/common.make APP_NAME = $PRODUCT_NAME $PRODUCT_NAME_OBJC_FILES = source.m include \$(GNUSTEP_MAKEFILES)/application.make"\ > GNUmakefile
Переменная среды, установленная в среде IDE, в которой она используется, равна $ PRODUCT_NAME . Теперь bash, очевидно, рассматривает этот сценарий как ссылку на переменную среды $ PRODUCT_NAME_OBJC_FILES . Я понимаю почему, но я не знаю, как обойти это. Есть указатели?
$ PRODUCT_NAME оценивается надлежащим образом, когда подчеркивание не следует сразу же после этого, но лишний пробел запутывает ситуацию.
Если вы хотите серьезно относиться к сценариям оболочки bash, вы можете прочитать [Руководство по расширенному написанию сценариев Bash] (http://www.google.com/search?q=advanced+bash+scripting) (также называемое «ABS»). ).
JanC 14 лет назад
0
1 ответ на вопрос
2
David Z
Похожие вопросы
-
2
.profile в Mac OS X?
-
1
Приостановить все, кроме x задач, интенсивно использующих процессор
-
10
Как я могу найти в истории bash и повторно запустить команду?
-
-
2
Можно ли передать выходные данные одной команды двум другим командам?
-
8
Переименуйте группу файлов одной командой
-
2
Почему мой путь не обновляется * сейчас *?
-
5
Как удалить символическую ссылку на каталог?
-
8
Спаси меня от бессмысленного терминала
-
9
Как можно добавить номер строки и табуляцию к каждой строке текстового файла?
-
1
Когда я должен положить конфигурации в .bashrc против. .bash_profile?