Differences

This shows you the differences between the selected revisions of the page.

script_custom_listing_format_csv 2015-08-25 script_custom_listing_format_csv 2026-01-16 (current)
Line 10: Line 10:
<code powershell> <code powershell>
param ( param (
-    $session = "sftp://user:mypassword;fingerprint=ssh-rsa-xx-xx-xx@example.com/",+    $sessionUrl = "sftp://user:mypassword;fingerprint=ssh-rsa-xxxxxxxxxxx...@example.com/",
    $remotePath = "/path",     $remotePath = "/path",
    $outFile = "listing.csv"     $outFile = "listing.csv"
Line 22: Line 22:
    # Setup session options     # Setup session options
    $sessionOptions = New-Object WinSCP.SessionOptions     $sessionOptions = New-Object WinSCP.SessionOptions
-    $sessionOptions.ParseUrl($session)+    $sessionOptions.ParseUrl($sessionUrl)
    try     try
Line 41: Line 41:
        }         }
-        # Generate a custom listing for ach file in the output file+        # Generate a custom listing for each file in the output file
        # Using UTF-16 (Unicode) encoding that Microsoft Excel likes.         # Using UTF-16 (Unicode) encoding that Microsoft Excel likes.
        foreach ($fileInfo in $directory.Files)         foreach ($fileInfo in $directory.Files)
        {         {
-            ("`"{0}`"`t{1}`t`"{2}`"" -f $fileInfo.Name, $fileInfo.Length, $fileInfo.LastWriteTime) | Out-File -Append $outFile -Encoding Unicode+            ("`"{0}`"`t{1}`t`"{2}`"" -f 
 + ···············$fileInfo.Name, $fileInfo.Length, $fileInfo.LastWriteTime) | 
 + ···············Out-File -Append $outFile -Encoding Unicode
        }         }
Line 58: Line 60:
    exit 0     exit 0
} }
-catch [Exception]+catch
{ {
-    Write-Host $_.Exception.Message+    Write-Host "Error: $($_.Exception.Message)"
    exit 1     exit 1
} }
Line 77: Line 79:
    "ls /path" ^     "ls /path" ^
    "exit"     "exit"
-if %ERRORLEVEL% == 0 msxsl.exe %XMLLOG% listing.xsl > listing_script.csv+if %ERRORLEVEL% == 0 msxsl.exe %XMLLOG% listing.xsl > listing.csv
</code> </code>
Line 86: Line 88:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:winscp="http://winscp.net/schema/session/1.0"> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:winscp="http://winscp.net/schema/session/1.0">
    <!-- Using UTF-16 encoding that Microsoft Excel likes -->     <!-- Using UTF-16 encoding that Microsoft Excel likes -->
-    <xsl:output method="text" encoding="UTF-16"/> +    <xsl:output method="text" encoding="UTF-16"·/> 
-    <xsl:strip-space elements="*"/>+    <xsl:strip-space elements="*"·/>
    <xsl:template match='winscp:ls[winscp:result[@success="true"]]/winscp:files/winscp:file'>     <xsl:template match='winscp:ls[winscp:result[@success="true"]]/winscp:files/winscp:file'>
        <xsl:text>&quot;</xsl:text>         <xsl:text>&quot;</xsl:text>
-        <xsl:value-of select="winscp:filename/@value"/>+        <xsl:value-of select="winscp:filename/@value"·/>
        <xsl:text>&quot;&#9;</xsl:text>         <xsl:text>&quot;&#9;</xsl:text>
-        <xsl:value-of select="winscp:size/@value"/>+        <xsl:value-of select="winscp:size/@value"·/>
        <xsl:text>&#9;&quot;</xsl:text>         <xsl:text>&#9;&quot;</xsl:text>
-        <xsl:value-of select="winscp:modification/@value"/>+        <xsl:value-of select="winscp:modification/@value"·/>
        <xsl:text>&quot;&#xa;</xsl:text>         <xsl:text>&quot;&#xa;</xsl:text>
    </xsl:template>     </xsl:template>

Last modified: by martin