Для скриптов, в которых копируются файлы большого объема или группы файлов, хочется видеть примерную оценку времени до завершения копирования. Пример функции для этой цели я размещаю ниже
Никаких ограничений, как например в BitsTransfer, я не заметил: можно копировать как отдельные файлы так и папки с файлами.
Помимо графического индикатора прогресса, мы увидим привычный подсчет и вес копируемых файлов с оценочным временем до завершения процесса.
Для использования более простого прогрессбара можно попробовать следующее:
Сначала объявляем следующую функцию:
function Copy-ItemUsingExplorer{ param( [string]$source, [string]$destination, [int]$CopyFlags ) $objShell = New-Object -ComObject 'Shell.Application' $objFolder = $objShell.NameSpace((gi $destination).FullName) $objFolder.CopyHere((gi $source).FullName,$CopyFlags.ToString('{0:x}')) }
Затем вызовем эту функцию с указанием ваших значений для Source и Destination:
Copy-ItemUsingExplorer 'E:\Курсы\Администрирование Red Hat Linux' 'C:\'
В результате прогресс копирования будет выводится в привычном всплывающем окне проводника(Explorer.exe)