ЧАСТИЧНОЕ РЕШЕНИЕ:
Прогресс можно отслеживать с помощью pv
функции. Это особенно полезно при резервном копировании больших файлов. Это не так полезно для многих небольших файлов, но позволяет увидеть прогресс по текущему открытому файлу и скорость загрузки. pv
не устанавливается по умолчанию.
Как использовать pv
: сначала захватите идентификатор процесса, а затем поместите его в качестве параметра to pv -d
.
Пример:
ps -ef | grep duplicity
Мы читаем PID (первое число после имени пользователя), затем
pv -d PID
Или однострочник *:
* при условии, что мы копируем файл с именем «диск». Второй grep сужает результаты поиска.
pv -d $(ps -ef | grep duplicity | grep disk | tr -s ' ' | cut -d ' ' -f 2)
где:
-d
говорит pv ожидать PID процесса для мониторинга,
ps -ef
печатает список процессов, запущенных на машине,
grep duplicity
захватывает только строки из списка процессов, которые содержат двойственность,
grep disk
предотвращает отображение первого процесса grep в результатах ps -ef и гарантирует, что мы только перечисляем конкретный процесс, который мы хотим отслеживать, ища часть имени скопированного файла,
tr -s ' '
обрезает несколько пробелов в выводе ps -ef до одного, чтобы cut мог работать правильно,
cut -d ' ' -f 2
вырезает только второе поле из вывода (наш PID) и использует пробелы в качестве разделителей полей. без предыдущей обрезки cut не будет работать (переменное количество пробелов в выводе ps -ef).
PV -D в действии