它是makefile中代码的一部分,有两个$$来扩展变量CONTINUE,为什么?有什么特别的意思吗?
read -r -p "Overwrite your existing default nginx configuration? [y/N] " CONTINUE;
if [ "$$CONTINUE" == "y" ] || [ "$$CONTINUE" == "Y" ]; then
echo "y"
else
echo "n"
fi
答案 0 :(得分:1)
$$(简单地说)在Makefile中转义,因为$ -Vars也存在于那里。 要将变量用于bash(也需要$ var),您必须编写$$
预编辑(主题从“脚本”更改为“makefile”)
这个脚本是否有效?
# ./test.sh
Overwrite your existing default nginx configuration? [y/N] y
n
将其更改为单个$。
$$扩展为执行bash shell的PID
($$)扩展为shell的进程ID。在()子shell中,它扩展为调用shell的进程ID,而不是子shell。