我在Makefile
中有下一条规则:
dbrestoretable:
echo ${TABLE:-asdf}
当我跑步时:
$ make dbrestoretable
echo
可是:
$ echo ${TABLE:-asdf}
asdf
为什么默认值 asdf
在第一种情况下不会回显?
UPD
指定的duplicate说明了如何使用Makefile
中分配的变量。它没有回答为什么不使用默认值
看看这个修改过的例子:
dbrestoretable:
echo ${TABLE:-asdf}
echo ${TABLE}
然后运行:
$ make dbrestoretable TABLE=mytable
echo
echo mytable
$ make dbrestoretable
echo
echo
正如您在使用${TABLE:-asdf}
时所看到的那样,它只返回空字符串。但我希望在第一次运行mytable
和第二次运行asdf
值时能够回显