我有一个包含多个DFS共享的文本文件,如下所示:
\\\computer1\dfsshare1
\\\computer2\dfsshare2
\\\computer3\dfsshare3
\\\computer4\dfsshare4
\\\computer5\dfsshare5
我想使用Test-Path
函数对它们中的每一个进行Foreach-Object
,然后列出每一行+ =
+其结果(true或false)并在行的末尾添加一个@
,所有这些都将显示在屏幕上。
我测试了以下内容:
$DFSList = "G:\DFS-MONITOR\DFS-List.txt"
Get-Content $DFSList | Foreach-Object {Write-host $_'=' Test-Path $_ '@'}
但是无法让Test-Path
在Write-Host
之后工作(只是没有它)。
假设第4个DFS共享不可用,预期结果应该是这样的:
\\computer1\dfsshare1=True@
\\computer2\dfsshare2=True@
\\computer3\dfsshare3=True@
\\computer4\dfsshare4=False@
\\computer5\dfsshare5=True@
在PowerShell中,如果要将命令/ script / cmdlet的结果/输出传递给另一个命令/ script / cmdlet,则需要包含在括号中提供结果的命令:
Write-Host $_ '=' (Test-Path $_) '@'