Иметь .bat отображать информацию во время выполнения (WinSCP) - PullRequest
0 голосов
/ 15 ноября 2018

Прежде чем начать, я хочу заранее поблагодарить вас за любую помощь. Это мой первый пост, и я постарался следовать правилам. Я проверил, но нигде не нашел ответа.

У меня есть пакетный файл, который я ежедневно запускаю по расписанию. Файл использует WinSCP для захвата содержимого папки на сервере и копирования их в локальный каталог. Размер передачи составляет около 1,2 ГБ - 1,5 ГБ и занимает около 20 секунд. Я хотел бы отобразить некоторую информацию во время передачи. Я ищу способ отображения байтов в секунду через мой сетевой интерфейс ( или аналогичный ) в том же окне cmd, что и при передаче.

Я понял, как получить информацию, которую хочу отобразить, выполнив:

typeperf "\Network Interface(Realtek PCIe GbE Family Controller)\Bytes Received/sec"

Мне просто интересно, есть ли способ отобразить информацию, которая возвращается из команды typeperf, когда моя передача файла завершается. Затем в конце передачи закройте окно. Вроде как какой-то текст с надписью «Пожалуйста, подождите» во время работы программы, за исключением того, что он будет показывать байт / с через интерфейс.

Вот мой скрипт, который я использую для передачи WinSCP FTP с удаленным ip и именем пользователя:

"C:\Program Files (x86)\WinSCP\WinSCP.exe" /ini=nul /command "open ftp://UserNamer:StrongPassword1@###.###.###.###/" "cd /ShooterGame/Saved" "lcd ""D:\ARK Server Backup""" "get SavedArk57057" "exit"

С нетерпением жду любой помощи, которая может быть оказана, предполагая, что я действительно возможен.

1 Ответ

0 голосов
/ 15 ноября 2018

Сам WinSCP показывает прогресс передачи.За исключением того, что вы запускаете WinSCP в скрытом режиме.

Замените winscp.exe на winscp.com, чтобы отобразить ход передачи в окне консоли.

enter image description here


Если вы хотите отобразить прогресс в вашем собственном пользовательском формате, используйте сборку WinSCP .NET [например из скрипта PowerShell ] вместо сценариев WinSCP.И обрабатывать Session.FileTransferProgress событие .

Существует руководство по преобразованию сценария WinSCP в сценарий PowerShell с использованием сборки WinSCP .NET .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...