Differences
This shows you the differences between the selected revisions of the page.
| library_example_zip_and_upload 2021-10-31 | library_example_zip_and_upload 2024-05-27 (current) | ||
| Line 12: | Line 12: | ||
| <code> | <code> | ||
| - | powershell.exe -File "ZipUpload.ps1" -sessionUrl "sftp://username:password;fingerprint=ssh-rsa-xxxxxxxxxxx...=@example.com/" -remotePath "/remote/path" -archiveName "archive.zip" file1.dat file2.dat | + | powershell.exe -File "ZipUpload.ps1" -sessionUrl "sftp://username:password;fingerprint=ssh-rsa-xxxxxxxxxxx...@example.com/" -remotePath "/remote/path" -archiveName "archive.zip" file1.dat file2.dat |
| </code> | </code> | ||
| Line 20: | Line 20: | ||
| # @name &ZIP and Upload... | # @name &ZIP and Upload... | ||
| # @command powershell.exe -ExecutionPolicy Bypass -File "%EXTENSION_PATH%" ^ | # @command powershell.exe -ExecutionPolicy Bypass -File "%EXTENSION_PATH%" ^ | ||
| - | # -sessionUrl "!E" -remotePath "!/" -archiveName "%ArchiveName%" -pause ^ | + | # -sessionUrl "!E" -remotePath "!/" -archiveName "%ArchiveName%" ^ |
| - | # -sessionLogPath "%SessionLogPath%" %Use7zip% -path7zip "%Path7zip%" ^ | + | # -refresh -pause -sessionLogPath "%SessionLogPath%" ^ |
| - | # -archive7zip %Archive7zip% !& | + | # %Use7zip% -path7zip "%Path7zip%" -archive7zip %Archive7zip% !& |
| # @description Packs the selected files to a ZIP archive and uploads it | # @description Packs the selected files to a ZIP archive and uploads it | ||
| # @flag ApplyToDirectories | # @flag ApplyToDirectories | ||
| - | # @version 7 | + | # @version 10 |
| # @homepage ~~SELF~~ | # @homepage ~~SELF~~ | ||
| # @require WinSCP 5.16 | # @require WinSCP 5.16 | ||
| Line 42: | Line 42: | ||
| param ( | param ( | ||
| # Use Generate Session URL function to obtain a value for -sessionUrl parameter. | # Use Generate Session URL function to obtain a value for -sessionUrl parameter. | ||
| - | $sessionUrl = "sftp://user:mypassword;fingerprint=ssh-rsa-xxxxxxxxxxx...=@example.com/", | + | $sessionUrl = "sftp://user:mypassword;fingerprint=ssh-rsa-xxxxxxxxxxx...@example.com/", |
| [Parameter(Mandatory = $True)] | [Parameter(Mandatory = $True)] | ||
| $remotePath, | $remotePath, | ||
| [Switch] | [Switch] | ||
| $pause, | $pause, | ||
| + | [Switch] | ||
| + | $refresh, | ||
| [Switch] | [Switch] | ||
| $use7Zip, | $use7Zip, | ||
| Line 110: | Line 112: | ||
| { | { | ||
| $parentPath = Split-Path -Parent (Resolve-Path $localPath) | $parentPath = Split-Path -Parent (Resolve-Path $localPath) | ||
| + | if ($parentPath[-1] -ne "\") | ||
| + | { | ||
| + | $parentPath += "\"; | ||
| + | } | ||
| if (Test-Path $localPath -PathType Leaf) | if (Test-Path $localPath -PathType Leaf) | ||
| Line 124: | Line 130: | ||
| foreach ($file in $files) | foreach ($file in $files) | ||
| { | { | ||
| - | $entryName = $file.Replace(($parentPath), "") | + | $entryName = $file.Replace($parentPath, "") |
| Write-Host "Adding $entryName..." | Write-Host "Adding $entryName..." | ||
| [System.IO.Compression.ZipFileExtensions]::CreateEntryFromFile( | [System.IO.Compression.ZipFileExtensions]::CreateEntryFromFile( | ||
| Line 157: | Line 163: | ||
| Write-Host "Archive $archiveName uploaded." | Write-Host "Archive $archiveName uploaded." | ||
| - | & "$env:WINSCP_PATH\WinSCP.exe" "$sessionUrl" /refresh "$remotePath" | + | # Refresh the remote directory in WinSCP GUI, if -refresh switch was used |
| + | if ($refresh) | ||
| + | { | ||
| + | Write-Host "Reloading remote directory..." | ||
| + | ············& "$env:WINSCP_PATH\WinSCP.exe" "$sessionUrl" /refresh "$remotePath" | ||
| + | } | ||
| } | } | ||
| finally | finally | ||