我是这里的新手,但 stackoverflow 过去曾帮助过我。
我正在编写一个 bash shell 脚本来生成 makefile(从小处开始)。
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当下划线没有紧随其后时,会被评估为适当,但额外的空格会弄乱下面的内容。
答案1
使用${PRODUCT_NAME}_OBJC_FILES
。花括号明确告诉 Bash 变量名的结束位置。