Command-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

 

pv1consume

 

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

 

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

 

syslog

 

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

 

# pv -p /etc/hosts | wc

 

pvwc

 

  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

 

Create-Dialog-Progress-Bar

 

 

 

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

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

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

Чтобы знать больше и выделяться знаниями среди толпы 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, подайте заявку или получите бесплатную консультацию.
Новости

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

Новая атака BLESA угрожает миллиардам Bluetooth-устройств, курсы переподготовки по информационной безопасности Минск

Новая атака BLESA угрожает миллиардам Bluetooth-устройств, курсы переподготовки по информационной безопасности Минск

52
0
Исследователи обнаружили новый метод атаки уязвимых Bluetooth-устройств. Если хакеры начнут ее эксплуатировать, но смогут заразить миллиарды приборов по всему миру.…
Российские хакеры похитили почти 17 миллионов долларов, курс по кибербезопасности секреты хакеров Минск

Российские хакеры похитили почти 17 миллионов долларов, курс по кибербезопасности секреты хакеров Минск

55
0
Власти США предъявили обвинения двум российским хакерам во взломе криптовалютных бирж. Более того, правоохранительные органы смогли собрать достаточно улик. Исследователи,…

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

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

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

Most Viewed Posts
Меню