title: Removing items from one CSV based on items in another CSV file
body: <p>I have a script that will generate a CSV file. The purpose of the script is to verify if a certain file is missing. For example, let's say I have the following files:</p>
  
  <pre><code>1.jpg
  2.jpg
  3.jpg
  4.jpg
  
  1.gif
  3.gif
  
  2.txt
  3.txt
  </code></pre>
  
  <p>Once the script is run, it will generate a report so I can visually see what file is missing. The report looks like:</p>
  
  <pre><code>JPG Files   GIF Files   TXT Files
  1.jpg       1.gif   
  2.jpg                   2.txt
  3.jpg       3.gif       3.txt
  </code></pre>
  
  <p>So you can see, I'm missing 1.txt and 2.gif.</p>
  
  <p>Here's where my problem comes in....</p>
  
  <p>I now have a SECOND CSV file that has a list of files that MUST be kept in the FIRST CSV. Anything that is NOT in the SECOND CSV file must now be removed from my FIRST CSV. For example:</p>
  
  <p>My FIRST CSV contains:</p>
  
  <pre><code>1.jpg
  2.jpg
  3.jpg
  
  1.gif
  3.gif
  
  2.txt
  3.txt
  </code></pre>
  
  <p>The SECOND CSV says that the following files need to remain:</p>
  
  <pre><code>1.jpg
  3.jpg
  
  1.gif
  
  2.txt
  </code></pre>
  
  <p>Therefore, anything that does not appear in the SECOND CSV file, needs to be removed from the FIRST CSV while retaining the same format, meaning that if 1.jpg is missing (it is still listed in the SECOND CSV but does not exist in the C:\JPG folder) it must show a blank space in the FIRST CSV.</p>
  
  <p>I hope this make sense. Please ask me if you have any questions or need clarification.</p>
  
  <p>Below is the portion of code from my script that generates the FIRST CSV:</p>
  
  <pre><code># Get dirs
  $dirJPG = "C:\JPG"
  $dirGIF = "C:\GIF"
  $dirTXT = "C:\TXT"
  $files = @()
  $files += Get-ChildItem -Path $dirBGR -Filter "*.jpg"
  $files += Get-ChildItem -Path $dirMI -Filter "*.gif"
  $files += Get-ChildItem -Path $dirW3F -Filter "*.txt"
  
  
  # Write a datetime stamped CSV file
  $datetime = Get-Date -Format "MM_dd_yyyy_hhmm"
  $files | Sort-Object -Property { $_.Name } | Group-Object -Property { 
  [System.IO.Path]::GetFileNameWithoutExtension($_.Name) } | % {
              New-Object psobject -Property @{
                              "JPG" Files" = $_.Group | ? { $_.Extension -eq ".jpg" } | % { $_.Name }
                              "GIF Files" = $_.Group | ? { $_.Extension -eq ".gif" } | % { $_.Name }
                              "TXT Files" = $_.Group | ? { $_.Extension -eq ".txt" } | % { $_.Name }
              } } | Export-Csv -Path "$datetime.csv" -NoTypeInformation
  </code></pre>
  
  <p>Thanks in advance for your assistance! :D</p>