gpt4 book ai didi

powershell - ${} 语法/运算符的用途是什么?

转载 作者:行者123 更新时间:2023-12-02 23:54:42 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





What is the meaning of ${} in powershell?

(4 个回答)


4年前关闭。




编辑:我对运算符(operator)功能的其他想法-

它似乎实现了 IContentCmdletProvider适用于env:的接口(interface), function: , 和 drive: PS驱动器。 (这可能也是它与隐式 variable: psdrive 交互的方式)。此接口(interface)使用 Get-ContentSet-Content cmdlet。

我找不到 Microsoft 提供的有关此功能的文档(在搜索引擎中搜索符号也非常困难)。我看到了一些非常奇怪的行为,可以通过 ${} 完成。 .例如:

${C:\Temp\Filename.txt} = 'This writes to the file!'

$ExampleString = ${C:\Temp\Filename.txt} #this gets file content!?

在一些自动模块中,我还看到使用此语法声明的函数参数变量 ${Message}而且我不确定是否应该更改它以符合编码标准,或者语法是否确实做了一些重要的事情(在这个例子中,Jeffrey Snover 的 MetaProgramming 模块)。我自己在字符串扩展中使用了调用变量的语法,但这是我知道的唯一用例。

那么, ${} 的作用是什么? ?

最佳答案

所以${}有两个不同的目的。其中之一是变量声明,因为它使您能够在变量名中包含任何特殊字符:

${special var with spaces}

但也允许您在更大的字符串中使用它,例如:
$Var="middle"
Write-Host "Before${Var}After"

正如您所建议的,另一个用例是它能够读取路径。
$Var = ${C:\Temp\Filename.txt}

是相同的
$Var = Get-Content -Path 'C:\Temp\Filename.txt'

还要写入路径:
${C:\Temp\Filename.txt} = 'This writes to the file!'

是相同的
'This writes to the file!' | Set-Content -Path 'C:\Temp\Filename.txt'

关于powershell - ${} 语法/运算符的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47760921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com