PowerShell中@""@分隔符的名称及具体用法咨询
PowerShell中@"..."@的术语及用法
你提到的这种分隔符对应的是PowerShell里的Here-String(逐字字符串),是专门用来处理多行文本的语法特性,不用频繁转义字符就能保留文本的原始格式。
核心用法
Here-String分两种类型:
1. 双引号Here-String(可解析变量/转义符)
语法:用@" 作为开头标记,"@ 作为结尾标记,注意结尾的"@必须单独占一行,且行首不能有任何空格。这种类型会自动解析文本里的变量和转义字符(比如\n、\t)。
示例:
$username = "张三" $htmlContent = @" <!DOCTYPE html> <html> <head> <title>用户页面</title> </head> <body> <h1>你好,$username!</h1> <p>这是通过变量生成的内容</p> </body> </html> "@
上面的代码里,$username会被替换成实际的变量值。
2. 单引号Here-String(纯原样输出)
语法:用@' 开头,'@ 结尾,同样结尾标记必须单独一行且无前置空格。这种类型不会解析任何变量或转义字符,完全保留输入的原始内容。
示例:
$rawScript = @' # 这是一段原样保存的脚本 echo "当前变量是:$var" '@
这里的$var不会被解析,会原样保留在文本中。
关键注意事项
- 结尾的分隔符必须单独占据一行,不能有任何空格或字符在它前面,否则PowerShell会识别失败。
- 适合存储多行的HTML、XML、脚本、日志模板等内容,相比普通字符串更简洁易读,避免大量使用
\n或转义引号。
内容的提问来源于stack exchange,提问作者Eduard M.
相关产品推荐
相关产品推荐

