我是powershell的新手,请原谅noob问题 . 我正在尝试比较多个服务器上的目录,以确保它们是同步的 . 我正在从servers.txt文件中读取服务器,并将列表中的第一个服务器设置为源服务器 .
# sets the source server as the FIRST server in the list
$sourceSRV = (Get-Content ./servers.txt -totalcount 1)
$servers = Get-Content ./servers.txt
#Variables for code directories
$code_src01 = Get-ChildItem -Recurse -path "E$\appdirectory"
Foreach ($server in $servers) {
Compare-Object -ReferenceObject $sourceSRV$code_src01 -
DifferenceObject $server$code_src01
}
我在Compare-Object调用中遇到了这个问题,我不确定要传递什么作为-ReferenceObject和-DifferenceObject属性 . 我希望ReferenceObject成为源服务器和文件路径的路径(server1 \ e $ \ appdirectory)和-differenceobject到列表中的其他服务器(server2 \ e $ \ appdirectory,server3 \ e $ \ appdirectory )
1 回答
你非常接近,但你的比较是错误的:
为了更进一步,我实际上在我的答案范围之外的参考服务器's file list with the rest of the distribution, but that'上使用
Get-FileHash
.