Как отслеживать прогресс выполнения некоторых операций с помощью команды «pv»

Как отслеживать прогресс выполнения некоторых операций с помощью команды «pv»

Новости

При создании резервных копий, копировании/перемещении больших файлов в вашей системе Linux, вы можете захотеть отслеживать прогресс и ход выполнения операции. Многие терминальные инструменты не имеют функций, позволяющих просматривать информацию о ходе выполнения команды.

В этой статье мы рассмотрим важную команду Linux/Unix под названием pv.

Pv — это терминальный инструмент, который позволяет отслеживать прогресс и ход выполнения операции. Использовании команды pv дает вам визуальное отображение следующей информации:

  • Сколько прошло времени.
  • Процент завершенной работы, включая индикатор выполнения.
  • Показывает текущую пропускную способность.
  • Общее количество переданных данных.
  • ETA – estimated time (расчетное время).

Как установить команду pv в Linux?

Эта команда не установлена ​​по умолчанию для большинства дистрибутивов Linux, поэтому вы можете установить ее, выполнив следующие шаги.

В Fedora, CentOS и RHEL

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

# yum install pv

# dnf install pv [В версиях Fedora 22+]

 

Образец вывода

Dependencies Resolved
=================================================================================
Package Arch Version Repository Size
=================================================================================
Installing:
pv x86_64 1.4.6-1.el7 epel 47 k
Transaction Summary
=================================================================================
Install 1 Package
Total download size: 47 k
Installed size: 93 k
Is this ok [y/d/N]: y
Downloading packages:
pv-1.4.6-1.el7.x86_64.rpm | 47 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : pv-1.4.6-1.el7.x86_64 1/1
Verifying : pv-1.4.6-1.el7.x86_64 1/1
Installed:
pv.x86_64 0:1.4.6-1.el7
Complete!

 

На Debian, Ubuntu и Linux Mint

 

# apt-get install pv

 

Образец вывода

 

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
pv
0 upgraded, 1 newly installed, 0 to remove and 533 not upgraded.
Need to get 33.7 kB of archives.
After this operation, 160 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu/ trusty/universe pv amd64 1.2.0-1 [33.7 kB]
Fetched 33.7 kB in 0s (48.9 kB/s)
Selecting previously unselected package pv.
(Reading database ... 216340 files and directories currently installed.)
Preparing to unpack .../archives/pv_1.2.0-1_amd64.deb ...
Unpacking pv (1.2.0-1) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Setting up pv (1.2.0-1) ...

 

В Gentoo Linux

Используйте диспетчер пакетов emerge для установки команды pv, как показано ниже.

# emerge --ask sys-apps / pv

 

На FreeBSD Linux

Вы можете использовать порт для его установки следующим образом:

 

# cd /usr/ports/sysutils/pv/

# make install clean

 

ИЛИ установить бинарный пакет следующим образом:

 

# pkg_add -r pv

 

Как использовать команду pv в Linux?

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

 

Синтаксис команды pv:

 

pv file
pv options file
pv file > filename.out
pv options | command > filename.out
comand1 | pv | command2 

 

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

Некоторые опции для переключения отображения.

  • Чтобы включить панель дисплея, используйте опцию —p.
  • Чтобы просмотреть прошедшее время, используйте параметр —timer.
  • Чтобы включить таймер ETA, который приблизительно говорит, сколько времени потребуется до завершения операции, используйте параметр —eta. Предположения основаны на предыдущих скоростях передачи и общем размере данных.
  • Чтобы включить счетчик скорости, используйте параметр —rate.
  • Чтобы отобразить общий объем уже переданных данных, используйте опцию —bytes.
  • Чтобы отобразить прогресс, сообщение о целых процентах вместо визуальной индикации, используйте параметр —n. Это может быть полезно при использовании pv с диалоговой командой для отображения прогресса в диалоговом окне.

Некоторые параметры в выходных модификаторах.

  • Чтобы дождаться передачи первого байта перед отображением информации о ходе работы, используйте параметр —wait.
  • Чтобы подать общий объем данных в байтах SIZE при вычислении процента и ETA, используйте параметр — размер SIZE.
  • Чтобы указать секунды между обновлениями, используйте опцию —interval SECONDS.
  • Используйте параметр —force для принудительной операции. Эта опция заставляет pv отображать визуальные эффекты, когда стандартная ошибка не является терминалом.
  • Общие параметры: -help для отображения информации об использовании и —version для отображения информации о версии.

Использование команды pv с примерами

  1. Если никакая опция не включена, команда pv работают с параметрами —p, -t, -e, -r и -b по умолчанию.

Например, чтобы скопировать файл opensuse.vdi в /tmp/opensuse.vdi, запустите эту команду и посмотрите индикатор выполнения в screencast:

# pv opensuse.vdi> /tmp/opensuse.vdi

 

Как отслеживать прогресс выполнения некоторых операций с помощью команды «pv»

 

  1. Чтобы сделать zip-файл из файла /var/log/syslog, выполните следующую команду.

 

# pv /var/log/syslog | zip> syslog.zip

 

syslog

 

  1. Чтобы подсчитать количество строк, слов и байтов в файле /etc/hosts, показывая только индикатор выполнения, выполните следующую команду.

 

# pv -p /etc/hosts | wc

 

Как отслеживать прогресс выполнения некоторых операций с помощью команды «pv»

 

  1. Можно следите за ходом создания файла резервной копии с помощью утилиты tar.

 

# tar -czf - ./Downloads/ | (pv -p -timer -rate -bytes> backup.tgz)

 

pv2

 

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

 

# tar -czf - ./Documents/ | (pv -n> backup.tgz) 2> & 1 | Диалоговое окно «Прогресс» 10 70

 

Как отслеживать прогресс выполнения некоторых операций с помощью команды «pv»

 

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University.

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
Новости

Больше похожих постов

Хакеры усиливают DDoS-атаки при помощи серверов Windows RDP, кибербезопасность и информационная безопасность обучение в Москве

Хакеры усиливают DDoS-атаки при помощи серверов Windows RDP, кибербезопасность и информационная безопасность обучение в Москве

9
0
Недавно специалисты обнаружили, что злоумышленники используют для DDoS-атак серверы Windows. Причем подходят для этих целей только определенные серверы. Ботнет для…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Самое читаемое
Меню