Hello I am using PowerShell Version 5 I am running a command and it is working but the narrowed search is not returning results.
Get-EventLog System -Newest 5 | where {$_.eventID -eq 1074}
So I thought oh I only want to see the last 5 objects that match my filter. It runs but returns no result because in the event log there is no eventID 1074 in the last 5 entries. So I just need to move that parameter to the end. No luck
Get-EventLog System | where {$_.eventID -eq 1074} | -newest 5
-newest : The term '-newest' is not recognized as the name of a cmdlet, function, script file, or operable program. Check
the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:53
+ Get-EventLog System | where {$_.eventID -eq 1074} | -newest 5
+ ~~~~~~~
+ CategoryInfo : ObjectNotFound: (-newest:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
So, positioning the -newest after the pipe moves the parameter into a position I think where it is not understood.
Any one have some advice to how I can approach thinking about this that will help me out in the future?
To limit your filtered results to at most 5 events, you must use
Select-Object -First 5in a final pipeline segment:-Newest <n>is a parameter that is specific toGet-EventLog, and it unconditionally returns the first<n>entries, irrespective of their content.There is no common parameter across cmdlets that offers similar functionality, but there's the generic
Select-Objectcmdlet that allows selecting up to<n>objects from whatever its input is via-First <n>.