title: powershell : ftp directory listing (help on a script)
body: <p>I am trying to do a list view of a ftp directory. The viewing part is ok so far but I am unable to manipulate the data I am getting back. Here is the script that I used;</p>
  
  <pre><code>[System.Net.FtpWebRequest]$ftp = [System.Net.WebRequest]::Create("ftp://ftp.microsoft.com/ResKit/y2kfix/alpha/") 
  $ftp.Method = [System.Net.WebRequestMethods+FTP]::ListDirectory #Details
  
  $response = $ftp.getresponse() 
  $stream = $response.getresponsestream() 
  
  $buffer = new-object System.Byte[] 1024 
  $encoding = new-object System.Text.AsciiEncoding 
  
  $outputBuffer = "" 
  $foundMore = $false 
  
  ## Read all the data available from the stream, writing it to the 
  ## output buffer when done. 
  do 
  { 
      ## Allow data to buffer for a bit 
      start-sleep -m 1000 
  
      ## Read what data is available 
      $foundmore = $false 
      $stream.ReadTimeout = 1000
  
      do 
      { 
          try 
          { 
              $read = $stream.Read($buffer, 0, 1024) 
  
              if($read -gt 0) 
              { 
                  $foundmore = $true 
                  $outputBuffer += ($encoding.GetString($buffer, 0, $read)) 
              } 
          } catch { $foundMore = $false; $read = 0 } 
      } while($read -gt 0) 
  } while($foundmore)
  
  $outputBuffer
  </code></pre>
  
  <p>Here is the response I am geting back for this script;</p>
  
  <pre><code>PS C:\Users\Toshiba&gt; C:\Apps\@PowerShell\FTPListDirectory.ps1
  forfiles.exe
  logtime.exe
  timeserv
  w32time
  </code></pre>
  
  <p>From there, how I can work on the data I am getting back. the file info (name, creation time, last update, etc.) and the other stuff.</p>
  
  <p>My goal here is to view all the ftp data in a directory and then I can download all the files in a directory.</p>
  
  <p>Any chance?</p>