从powershell v3调用命令到powershell v2
我有两个系统。其中一个具有PowerShell版本2,另一个具有PowerShell版本3。我使用了从系统版本3到系统版本2的Invoke命令。我的输出不正确。当我在本地使用PowerShell 2的系统中的命令时,我的输出有200行,但在远程使用的系统中有150行。为什么会这样从powershell v3调用命令到powershell v2,powershell,powershell-2.0,powershell-3.0,Powershell,Powershell 2.0,Powershell 3.0,我有两个系统。其中一个具有PowerShell版本2,另一个具有PowerShell版本3。我使用了从系统版本3到系统版本2的Invoke命令。我的输出不正确。当我在本地使用PowerShell 2的系统中的命令时,我的输出有200行,但在远程使用的系统中有150行。为什么会这样 $log | ForEach-Object{ get-eventlog -log $_ -After $yesterday -Before $todaye | Group-Object Eve
$log | ForEach-Object{
get-eventlog -log $_ -After $yesterday -Before $todaye |
Group-Object EventID, EntryType, Source, MachineName,
{(([String]$_.TimeGenerated) -split " ")[0]},
{(([String]$_.TimeGenerated) -split " ")[1]} -NoElement |
Select-Object count, name |
ForEach-Object {
$properties = @{
'ServerName' = ($_.Name -split ", ")[3];
'day' = (($_.Name -split ", ")[4] -split " ")[0];
'time' = (($_.Name -split ", ")[5]);
'EventID' = ($_.Name -split ", ")[0];
'EventType' = ($_.Name -split ", ")[1];
'Source' = ($_.Name -split ", ")[2];
'Count' = $_.Count;
}
$psobject = new-object psobject -Property $properties
$csv += $psobject
}
}
你能发布你使用的代码吗?在PS2和PS3中本地执行代码时会发生什么?你们仍然得到不同的结果吗?当我在PS2和PS3中本地执行代码时,我得到了真实的结果。但是,当我从PS3远程执行到PS2的代码时,我得到了错误的结果。当我在PS2中执行代码时,我的结果中有200行,但在PS3远程执行到PS2的相同代码时,我的结果中有150行。在没有看到代码和结果的情况下,尝试和排除故障是不可能的。你能用你可以在问题中发布的代码复制问题吗?
$log
和$csv
来自哪里?您的Invoke命令
语句是什么样子的?远程结果中缺少什么类型的记录?您可以发布您使用的代码吗?在PS2和PS3中本地执行代码时会发生什么?你们仍然得到不同的结果吗?当我在PS2和PS3中本地执行代码时,我得到了真实的结果。但是,当我从PS3远程执行到PS2的代码时,我得到了错误的结果。当我在PS2中执行代码时,我的结果中有200行,但在PS3远程执行到PS2的相同代码时,我的结果中有150行。在没有看到代码和结果的情况下,尝试和排除故障是不可能的。你能用你可以在问题中发布的代码复制问题吗?$log
和$csv
来自哪里?您的Invoke命令
语句是什么样子的?远程结果中缺少哪些类型的记录?