我有HTML文件:
1.html
!DOCTYPE html>
<html>
<head>
<title>Password Reminder</title>
</head>
<body>
<p>
Dear user, your password expires in: <strong>$($days)</strong> days.
</p>
</body>
</html>
我创建了读取文件内容并将$days
变量替换为实际变量值函数
function ReadTemplate($days) {
$template_content = Get-Content "C:\PasswordReminder\1.html" -Encoding UTF8 -Raw
#$template_content = [IO.File]::ReadAllText($template)
$template_content = $template_content -replace "{}",$days
return $template_content
}
但当调用它时
$content = ReadTemplate -days 2
您的密码将在以下时间后过期,而不是“尊敬的用户”:两天。
我越来越
尊敬的用户,您的密码将在以下时间后过期:**$($天)**天。
代替$($days)
指定{0}
但什么也不
3条答案
按热度按时间yhxst69z1#
尝试
$template_content = $template_content.replace('$($days)',$days)
ukdjmx9f2#
可以使用
Escape
方法:pw9qyyiw3#
由于
$($days)
实际上是一个有效的PowerShell变量语法,因此您可能只需要替换它: