#Alan Kaplan #10/1/2014 #Requires -version 3 #Requires -modules Posh-NVS @" You can get the Posh-NVS module from https://github.com/darkoperator/Posh-NVS written by Carlos Perez, http://www.darkoperator.com Download the ZIP and put the entire folder as Posh-NVS under your module folder IMPORTANT NOTE: Remove all streams from the files in the module folder. I used: gci -Recurse | Remove-Item -Stream * If you fail to do this you may get an "Operation is not supported" error importing the module. "@ Function Get-OpenFile($title, $filter,$initialDirectory) { add-type -assemblyname System.Windows.Forms $OpenFileDialog = New-Object System.Windows.Forms.OpenFileDialog $OpenFileDialog.initialDirectory = $initialDirectory $OpenFileDialog.filter = $filter $OpenFileDialog.Title = $title $OpenFileDialog.ShowDialog() | Out-Null $OpenFileDialog.filename $OpenFileDialog.ShowHelp = $true } $NessusFile = Get-OpenFile -title "Choose a Nessus v2 file" -filter "Nessus Files (*.nessus)|*.nessus" -initialDirectory "$env:USERPROFILE\desktop" #========= Example ========= Import-Module Posh-NVS $Info = Import-NessusV2Report $NessusFile $info | foreach {$_.reportitems} | Export-Csv -NoTypeInformation $NessusFile.Replace("nessus","csv")