Есть ли какой-либо способ отобразить индикатор выполнения при копировании с сервера на локальный (или наоборот) с помощью scp
?
Я не думаю, что это можно сделать с помощью scp
. В прошлый раз, когда мне нужно было что-то подобное, т.Е. показанный прогресс, я использовал rsync
вместо. Он показывает прогресс в виде столбика. Посмотрите, сработает ли это для вас.
Вам нужно будет использовать --progress
возможность rsync
. Вы можете использовать следующую команду:
rsync -r -v --progress -e ssh user@remote-system:/address/to/remote/file /home/user/
То -v
переключатель работает нормально.
Пример:
5% 9232 КБ 357,5КБ/с 07:48 ETA
По состоянию на 2018 год прогресс и ETA отображаются по умолчанию и могут быть отключены -q
Я не знаю, как это сделать в командной строке. Я уверен, что это возможно, но для этого есть графический метод.
Nautilus (файловый браузер по умолчанию в Ubuntu) может подключать ssh/sftp-серверы. После этого они действуют как локальная файловая система, и вы можете копировать файлы, как обычно. И вы получаете обычный индикатор выполнения, как и при обычной копии.
Загляни под File
меню для Connect to server...
Возможно, вы сможете изменить этот сценарий для индикатора выполнения для “cp”: "Can you get cp to give a progress bar like wget?" - Chris Lamb
Теперь я получаю процент.Но мне нужен индикатор выполнения.
есть сценарий, но я понятия не имею, как заставить его работать, хотя
scp -r не показывает индикатор выполнения, но он показывает процент от каждого файла