我在PowerShell上有一个脚本,可以在几台Windows 7和Windows 10计算机上远程调用命令。
远程运行的命令基本上会在C:\分区内的目录上创建几个文件,并且在完成调用命令后,我将Get-ChildItem
与Where-Object
一起使用来选择特定文件。
示例:
$ComputerArray = @("win10-01", "Win10-02", "win7-01", "WIn7-02")
foreach ($comp in $ComputerArray) {
Invoke-Command -ComputerName $comp -ScriptBlock {
cd c:\temp
New-Item test.txt
}
$file = Get-ChildItem \\$comp\C$\temp |
Where-Object {$_.Name -match "test"}
if ($file -eq $null) {
'there is no file such as test'
} else {
$file
}
}
在Windows 10计算机上,有一个结果,它告诉我有一个“ test.txt”文件,在Windows 7上它有“没有诸如test之类的文件”。
不用说我的所有机器都在运行PowerShell 5.1。