首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用PowerShell通过FTP上传文件

使用PowerShell通过FTP上传文件
EN

Stack Overflow用户
提问于 2009-12-08 22:38:55
回答 8查看 198.3K关注 0票数 79

我想使用PowerShell传输文件到一个匿名的FTP服务器。我不会使用任何额外的包。多么?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-12-09 01:03:46

我不确定你是否能100%防止脚本挂起或崩溃,因为有些事情是你无法控制的(如果服务器在上传过程中断电了怎么办?)-但这应该会为你的入门提供一个坚实的基础:

代码语言:javascript
复制
# create the FtpWebRequest and configure it
$ftp = [System.Net.FtpWebRequest]::Create("ftp://localhost/me.png")
$ftp = [System.Net.FtpWebRequest]$ftp
$ftp.Method = [System.Net.WebRequestMethods+Ftp]::UploadFile
$ftp.Credentials = new-object System.Net.NetworkCredential("anonymous","anonymous@localhost")
$ftp.UseBinary = $true
$ftp.UsePassive = $true
# read in the file to upload as a byte array
$content = [System.IO.File]::ReadAllBytes("C:\me.png")
$ftp.ContentLength = $content.Length
# get the request stream, and write the bytes into it
$rs = $ftp.GetRequestStream()
$rs.Write($content, 0, $content.Length)
# be sure to clean up after ourselves
$rs.Close()
$rs.Dispose()
票数 86
EN

Stack Overflow用户

发布于 2010-03-21 10:47:28

还有一些其他的方法。我使用了以下脚本:

代码语言:javascript
复制
$File = "D:\Dev\somefilename.zip";
$ftp = "ftp://username:password@example.com/pub/incoming/somefilename.zip";

Write-Host -Object "ftp url: $ftp";

$webclient = New-Object -TypeName System.Net.WebClient;
$uri = New-Object -TypeName System.Uri -ArgumentList $ftp;

Write-Host -Object "Uploading $File...";

$webclient.UploadFile($uri, $File);

您可以使用以下命令针对windows FTP命令行实用程序运行脚本

代码语言:javascript
复制
ftp -s:script.txt 

(查看this article)

关于SO的以下问题也回答了这个问题:How to script FTP upload and download?

票数 49
EN

Stack Overflow用户

发布于 2011-12-29 04:13:22

我不会说这比投票最高的solution...but更优雅这是很酷的(至少在我看来是这样的):

代码语言:javascript
复制
$server = "ftp.lolcats.com"
$filelist = "file1.txt file2.txt"   

"open $server
user $user $password
binary  
cd $dir     
" +
($filelist.split(' ') | %{ "put ""$_""`n" }) | ftp -i -in

正如你所看到的,它使用的是小的内置windows FTP客户端。更简短,更直截了当。是的,我真的用过了,而且很管用!

票数 31
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1867385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档