我写了一个简单的 bash 脚本,它们用 html 链接发送邮件。
#!/bin/bash
ASS=10
sendmail [email protected] <<EOF
Subject: Simple title
<html>
<body>
this is just a link
URL: <a href="http://test.site/index?redirect=tail_$ASS_Tail\$1&noAUTO=1">Go to site</a>
</body>
</html>
EOF
但是当电子邮件到达时,$ASS 没有插入链接,我看到以下内容 http://test.site/index=tail_$1&noAUTO=1 怎么解决呢?
答案1
这是因为_
是一个有效的变量组成字符。你有:
URL: <a href="http://test.site/index?redirect=tail_$ASS_Tail\$1&noAUTO=1">
这里变量名被视为从 开始ASS_Tail
最多有效字符数 (upto ) 。\
ASS
${}
当名称后面有有效字符时,您需要将变量名称声明括起来:
URL: <a href="http://test.site/index?redirect=tail_${ASS}_Tail\$1&noAUTO=1">