PowerShell命令
Get-ADFSRelyingPartyTrust | select Name | out-file C:\listOfNames.txt
生成一个文件如下:
Name
----
AustriaRP
BahamasRP
BrazilRP
CanadaRP
[...]
现在,我如何检查BrazilRP
是否已被提取并且C:\listOfNames.txt
是否包含它?
Get-Content
然后Select-String
应该有所帮助。如果字符串在文件中,它将被返回。如果没有,那么该命令将返回空值。
Get-Content C:\listOfNames.txt | Select-String "BrazilRP"
如果“BrazilRP”不止一次出现,则所有出现的事件都将返回,因此您知道是否有任何重复。如果字符串是较长表达式的一部分,则同样适用。例如,如果您搜索“zil”,那么也将返回“BrazilRP”。
您还可以将结果传递给另一个文件:
Get-Content C:\listOfNames.txt | Select-String "BrazilRP" | Out-File C:\myResults.txt
我找到了一个解决方案(但感谢PiotrWolkowski建议我使用Get-Content
功能):
$file = Get-Content "C:\listOfNames.txt"
$containsWord = $file | %{$_ -match "BrazilRP"}
if ($containsWord -contains $true) {
Write-Host "There is!"
} else {
Write-Host "There ins't!"
}