Ваши возможности здесь довольно ограничены. Виджет Icon Tasks для KDE имеет эту функцию, но единственное известное мне приложение, использующее его функцию прогресса, — это Dolphin (файловый менеджер ). Надеюсь, это расширится до нативных реализаций DE по какому-то стандарту, поскольку это одна из немногих вещей, которых мне не хватает в Windows.
Рассмотрите возможность переноса всего каталога вместо отдельных файлов:
scp -r username@remote:/remote_path /local_path/
Если это приведет к передаче слишком большого количества файлов, и вы действительно хотите передавать только файлы, имена которых заканчиваются на .json
в одном каталоге, вы можете рассмотреть rsync
(, который имеет лучшие возможности для фильтрации передаваемых данных.):
rsync -av --include='*.json' --exclude='*' username@remote:/remote_path/ /local_path/
При этом копируются только файлы, имена которых заканчиваются на .json
, но игнорируются другие имена. Здесь необходимо завершение /
на источнике.
Опция -a
позволяет передавать также метаданные файла (временные метки, в основном )и заставляет rsync
рекурсивно спускаться в подкаталоги (, но это ограничено --exclude
выше ), в то время как -v
для подробной операции.
Третий вариант — создать tar
архив удаленного каталога или, по крайней мере, файлов, которые вы хотите передать, а затем scp
этот архив перенести в локальную систему. На самом деле, это можно было бы сделать за один раз с ssh
, имитируяscp -r
:
ssh username@remote 'tar -c -f - -C /remote_path.' | tar -x -f - -C /local_path