【问题标题】:start download from website with powershell commandlet ( using BITS transfer)使用 powershell commandlet 从网站开始下载(使用 BITS 传输)
【发布时间】:2015-04-11 14:52:32
【问题描述】:

我已经配置了 IIS 服务器,它现在在 localhost 上运行。我需要在 Powershell commandlet 的帮助下下载 IIS 目录中的文件。

我试过后台智能传输服务.. 喜欢

Start-BitsTransfer -Asynchronous -Priority High -TransferType 下载 -Source http://localhost/vdir/validity.txt -Destination C:\

它执行得很好,没有给出任何错误 但文件没有下载 就像 m 将比特传输状态设为“TRANSFERRED”,但文件没有被下载..知道为什么会这样..:(

【问题讨论】:

  • 尝试Start-BitsTransfer-Verbose-Debug 参数
  • 尝试Start-BitsTransfer-Verbose-Debug 参数

标签: powershell iis download microsoft-bits


【解决方案1】:

可能是因为 -Asynchronous 标志需要 Complete-BitsTransfer cmdlet 才能完成传输。

例如。 如果你会像

这样运行你的代码
Start-BitsTransfer -Asynchronous -Priority High -TransferType Download -Source http://localhost/vdir/validity.txt -Destination C:\

那么我猜你的 C:\ 根目录下会有一些 xxxx.tmp 文件。当你的 BITS 工作的状态会是这样的时候

JobId               : **3bdb9071-d780-446f-974c-074a48206c0c**
DisplayName         : BITS Transfer
TransferType        : Download
JobState            : **Transferred**
OwnerAccount        : blablabla
Priority            : High
FilesTransferred    : 1
FilesTotal          : 1
BytesTransferred    : 310764
BytesTotal          : 310764
CreationTime        : 2/23/2015 3:55:23 PM
ModificationTime    : 2/23/2015 3:55:39 PM
MinimumRetryDelay   : 
NoProgressTimeout   : 
TransientErrorCount : 0
ProxyUsage          : SystemDefault
ProxyList           : 
ProxyBypassList     : 

然后您需要运行以下命令将 xxxx.tmp 文件转换为validity.txt

$Job = Get-BitsTransfer -JobId "3bdb9071-d780-446f-974c-074a48206c0c"
Complete-BitsTransfer -BitsJob $Job

【讨论】:

  • 使用异步BITS传输有什么好处吗??
  • 是的。在异步模式下,传输将在网络故障或其他情况下自动恢复。实际上,异步模式意味着传输将作为后台作业添加。同步模式类似于通常的手动复制操作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-19
  • 1970-01-01
  • 2020-12-31
相关资源
最近更新 更多