考虑以下示例。您有一个服务器名称列表已复制到剪贴板。
您如何快速创建包含字符串列表的PowerShell变量?
现在我知道你只是用单引号包装下面看到的字符串,但是如何以编程方式完成呢?
样品:
$list = @(
One
Two
Three
)
答案 0 :(得分:1)
您可以使用System.Windows.Forms
命名空间中的Clipboard
类:
Add-Type -Assembly System.Windows.Forms | Out-Null
$clp = [Windows.Forms.Clipboard]::GetText() -split "`r`n"
剪贴板内容作为单个字符串返回,因此您需要在换行符处将其拆分以获得一行数组。
另一个选项是InternetExplorer.Application
COM对象:
$ie = New-Object -COM 'InternetExplorer.Application'
$ie.Navigate("about:blank")
while ($ie.ReadyState -ne 4) { Start-Sleep -Milliseconds 100 }
$clp = $ie.Document.parentWindow.clipboardData.getData('text') -split "`r`n"
$ie.Quit()
但是,要使其正常工作,您必须将about:blank
放在一个安全区域中,您可以在其中允许对脚本进行编程式剪贴板访问: