Differences
This shows you the differences between the selected revisions of the page.
library_powershell 2021-08-27 | library_powershell 2023-10-30 (current) | ||
Line 17: | Line 17: | ||
powershell.exe -File upload.ps1 | powershell.exe -File upload.ps1 | ||
</code> | </code> | ||
+ | |||
+ | PowerShell (Core)'s ''pwsh.exe'' installs into ''C:\Program Files\PowerShell\<version>''. | ||
Note that by default, executing PowerShell scripts is disabled. To override that, you can either lift the restriction by typing using ''[[ps>microsoft.powershell.security/set-executionpolicy|Set-ExecutionPolicy]]'' cmdlet on PowerShell administrator console:((Run ''powershell.exe'' as Administrator to get PowerShell console.)) | Note that by default, executing PowerShell scripts is disabled. To override that, you can either lift the restriction by typing using ''[[ps>microsoft.powershell.security/set-executionpolicy|Set-ExecutionPolicy]]'' cmdlet on PowerShell administrator console:((Run ''powershell.exe'' as Administrator to get PowerShell console.)) | ||
Line 29: | Line 31: | ||
powershell.exe -ExecutionPolicy Unrestricted -File upload.ps1 | powershell.exe -ExecutionPolicy Unrestricted -File upload.ps1 | ||
</code> | </code> | ||
- | |||
- | PowerShell (Core)'s ''pwsh.exe'' installs into ''C:\Program Files\PowerShell\<version>''. | ||
===== [[install]] Installing the Assembly ===== | ===== [[install]] Installing the Assembly ===== | ||
Line 101: | Line 101: | ||
==== [[module]] PowerShell Module ==== | ==== [[module]] PowerShell Module ==== | ||
- | There is a third-party PowerShell module, [[https://dotps1.github.io/WinSCP/|WinSCP PowerShell Wrapper]], that provides a cmdlet interface on top of the .NET assembly. | + | There is a third-party PowerShell module, [[https://github.com/tomohulk/WinSCP|WinSCP PowerShell Wrapper]], that provides a cmdlet interface on top of the .NET assembly. |
Example: | Example: | ||
Line 109: | Line 109: | ||
$credential = Get-Credential | $credential = Get-Credential | ||
# Create a WinSCP Session. | # Create a WinSCP Session. | ||
- | $session = New-WinSCPSession -Hostname "example.com" -Credential $credential -SshHostKeyFingerprint "ssh-rsa 2048 xxxxxxxxxxx...=" | + | $session = New-WinSCPSession -Hostname "example.com" -Credential $credential -SshHostKeyFingerprint "ssh-rsa 2048 xxxxxxxxxxx..." |
# Using the WinSCPSession, download the file from the remote host to the local host. | # Using the WinSCPSession, download the file from the remote host to the local host. | ||
Receive-WinSCPItem -WinSCPSession $session -Path "/home/user/file.txt" -Destination "C:\download\" | Receive-WinSCPItem -WinSCPSession $session -Path "/home/user/file.txt" -Destination "C:\download\" | ||
Line 120: | Line 120: | ||
<code powershell> | <code powershell> | ||
# Piping the WinSCPSession into the Receive-WinSCPItem auto disposes the WinSCP.Session object after completion. | # Piping the WinSCPSession into the Receive-WinSCPItem auto disposes the WinSCP.Session object after completion. | ||
- | New-WinSCPSession -Hostname "example.com" -Credential (Get-Credential) -SshHostKeyFingerprint "ssh-rsa 2048 xxxxxxxxxxx...=") | | + | New-WinSCPSession -Hostname "example.com" -Credential (Get-Credential) -SshHostKeyFingerprint "ssh-rsa 2048 xxxxxxxxxxx...") | |
Receive-WinSCPItem -Path "/home/user/file.txt" -Destination "C:\download\" | Receive-WinSCPItem -Path "/home/user/file.txt" -Destination "C:\download\" | ||
</code> | </code> | ||
Line 141: | Line 141: | ||
UserName = "user" | UserName = "user" | ||
Password = "mypassword" | Password = "mypassword" | ||
- | SshHostKeyFingerprint = "ssh-rsa 2048 xxxxxxxxxxx...=" | + | SshHostKeyFingerprint = "ssh-rsa 2048 xxxxxxxxxxx..." |
} | } | ||