Если вы хотите загружать файлы с индикаторами выполнения и не снижать производительность при этом, то Start-BitsTransfer из модуля BitsTransfer что вы хотите использовать.
Start-BitsTransfer -Source $using:uri -Destination 'c:\temp\file.txt'
Для передачи файлов Start-BitsTransfer значительно превосходит Invoke-WebRequest . Как только вы сделаете переключатель, вы никогда не оглядываетесь назад. Вы по-прежнему получаете индикаторы выполнения, если не используете асинхронный режим, но снижение производительности незначительно, поскольку передача происходит в фоновом режиме с использованием службы Windows BITS. Кроме того, вы получаете все преимущества службы BITS, такие как фоновая передача в режиме ожидания / паузы, выбор приоритета передачи / политики политики, возобновление загрузки при перезагрузке системы, использование сохраненных учетных данных из Windows Диспетчер учетных данных.
Кроме того, параметры -Source и -Destination работают с в любой комбинации из следующих:
- Локальные пути
- Удаленные пути к общим файлам
- Пути URI
ПРИМЕЧАНИЕ. Модуль BitsTransfer впервые был доступен в Windows Powershell 3.0 on Windows 7 / Windows Server 2008 R2 и новее.