ps1aniuge
2018-10-09 15:10:51 +08:00
linux 版 powershell,管理员权限运行 Install-Module winscp 即可。
[测试通过的脚本例子]
#----------------------------
#用户输入部分
$本地文件_路径 = 'd:\'
$本地文件_文件名 = 'a1.txt'
$本地文件_绝对路径名 = join-path -Path $本地文件_路径 -ChildPath $本地文件_文件名
$远程路径 = '/UPLOAD/'
$ftp 服务器 = '192.168.1.1'
$用户名 = 'a'
$用户密码明文 = '测试通过-2017-11'
#----------------------------
#脚本 main
$用户密码密文 = ConvertTo-SecureString $用户密码明文 -AsPlainText -Force
$我的登陆凭据 = New-Object System.Management.Automation.PSCredential ($用户名,$用户密码密文)
$ftp 连接参数 = new-WinSCPSessionOption -Protocol Ftp -HostName $ftp 服务器 -Credential $我的登陆凭据
$ftp 连接 = new-WinSCPSession -SessionOption $ftp 连接参数
$传输参数_二进制 = New-WinSCPTransferOption -TransferMode Binary
Send-WinSCPItem -WinSCPSession $ftp 连接 -LocalPath $本地文件_绝对路径名 -RemotePath "$远程路径" -TransferOptions $传输参数_二进制
#上传用 Send-WinSCPItem
Receive-WinSCPItem -WinSCPSession $ftp 连接 -RemotePath "$远程路径 /a2.txt" -LocalPath "d:\j"
#下载用 Receive-WinSCPItem
Remove-WinSCPSession -WinSCPSession $ftp 连接 #收工下班