Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

Question about adding to output with PowerShell

Posted on 2013-01-30
3
294 Views
Last Modified: 2013-01-30
Hello. I created a PowerShell script that searches the event viewer for Service Pack information in the event viewer. It reads from a text file and outputs what it finds. I am still learning my way around PowerShell. I want to add the name of each computer before it searches the next to my output.

For example, the output currently looks like the below.

Error Microsoft-Windows-Service Pack Installer          8 Service Pack installation failed with error code 0x800f0828.                      
           Error Microsoft-Windows-Service Pack Installer          5 There is not enough free disk space to install the Service Pack. Required=4623 MB.
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              
           Error Microsoft-Windows-Service Pack Installer          8 Service Pack installation failed with error code 0x800f0828.                      
     Information Microsoft-Windows-Service Pack Installer          9 Service Pack 1 installation succeeded.                                            
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              

I would like it to look like the below. I assume I could do something with $Computer but I am not sure how to do so.

Computer 1
           Error Microsoft-Windows-Service Pack Installer          8 Service Pack installation failed with error code 0x800f0828.                      
           Error Microsoft-Windows-Service Pack Installer          5 There is not enough free disk space to install the Service Pack. Required=4623 MB.
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              
           Error Microsoft-Windows-Service Pack Installer          8 Service Pack installation failed with error code 0x800f0828.                      

Computer 2
     Information Microsoft-Windows-Service Pack Installer          9 Service Pack 1 installation succeeded.                                            
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              
     Information Microsoft-Windows-Service Pack Installer          1 Service Pack 1 installation started.                                              

I know it is something simple that I am missing but I cannot see to find it. Any help is appreciated.

$Computer = Get-Content c:\temp\machines.txt
If (Test-Connection -comp $computer -count 1 -quiet) {
  "Searching Event Viewer"
   Get-EventLog System -ComputerName $Computer -Newest 4 -Source '*Service Pack*' | Format-Table Time, EntryType, Source, InstanceID, Message -AutoSize | Out-File C:\temp\ServicePack.log
  }
Else {
  "Machine is offline."
   Exit
  }
0
Comment
Question by:Lorrec
  • 2
3 Comments
 
LVL 42

Accepted Solution

by:
sedgwick earned 500 total points
ID: 38835304
i've added MachineName to the properties exported:

$Computer = Get-Content c:\temp\machines.txt
If (Test-Connection -comp $computer -count 1 -quiet) {
  "Searching Event Viewer"
   Get-EventLog System -ComputerName $Computer -Newest 4 -Source '*Service Pack*' | Format-Table MachineName, Time, EntryType, Source, InstanceID, Message -AutoSize | Out-File C:\temp\ServicePack.log
  }
Else {
  "Machine is offline."
   Exit
  }

Open in new window

0
 

Author Comment

by:Lorrec
ID: 38835347
Wow. It was simple. Thank you for the assistance.
0
 

Author Closing Comment

by:Lorrec
ID: 38835351
Thank you for the quick response.
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
Create and license users in Office 365 in bulk based on a CSV file. A step-by-step guide with PowerShell script examples.
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question