Утилита pv (от англ. Pipe Viewer) — инструмент, командной строки Linux, который используется как индикатор выполнения (Progress Bar) различных команд в ОС, а также позволяет отслеживать состояние данных, проходящих через конвейер. Таким образом, с ее помощью можно определить скорость и время передачи информации.
В этой статье мы расскажем, как установить и использовать утилиту pv в ОС Linux.
Содержание:
Установка утилиты pv в Linux
Инструмент pv доступен в репозиториях большинства дистрибутивов Linux. Поэтому для его установки достаточно выполнить одну команду.
Для Debian / Ubuntu:
Для CentOS / RHEL:
Для Fedora 22+:
У команды pv есть опции, которые расширяют ее функционал. Чтобы просмотреть их список, выполните в терминале:
Читайте также: 17 примеров использования top в Linux.
Далее в примерах мы будем использовать следующие параметры:
--rate-limit— позволяет задать максимальную скорость передачи данных;-p(или--progress) — отображает индикатор выполнения команды;--timer— добавляет таймер выполнения команды;--rate— отображает текущую скорость передачи данных;--bytes— отображает общее количество переданных данных в байтах.
Использование pv в Linux
В большинстве случаев команда pv используется с операторами перенаправления и конвейерами. Например:
Мониторинг копирования содержимого файла
С помощью инструмента pv можно легко отслеживать процесс выполнения копирования содержимого одного файла в другой. Это особенно полезно при обработке большого объема текста. Например:
На скриншоте выше видно, что инструмент вывел на экран объем скопированных файлов, время выполнения операции и среднюю скорость передачи данных.
Отслеживание процесса создания архива
Вы можете создавать более сложные конструкции из команд с помощью pv. К примеру, отследим процесс архивации файла. Для этого выполним следующие действия:
- передадим содержимое файла на вход команды
zipс помощью конвейера; - присвоим название для архива с помощью оператора перенаправления.
Читайте также: Как создавать и извлекать файлы Zip в конкретный каталог в Linux.
Изменение вывода команды pv
Вы можете самостоятельно настраивать вывод команды pv. Например, чтобы вывести на экран только строку прогресса выполнения команды, используйте параметр -p:
Чтобы отобразить на экране таймер выполнения операции, скорость передачи данных и общее количество переданных байт, используйте параметры --timer, --rate и --bytes, соответственно:
Ограничение скорости передачи данных
С помощью команды pv Вы можете ограничивать скорость передачи данных в ОС. Для этого следует использовать опцию --rate-limit. Например, сделаем так, чтобы скорость создания архива составляла 1 мегабайт в секунду:
Читайте также: Как ограничить скорость загрузки файлов с помощью Wget в Linux.
Использование утилит pv и dialog
Вы можете использовать команды pv и dialog вместе, чтобы сделать процесс мониторинга выполнения операции более интерактивным. Утилита dialog используется для создания диалоговых окон в терминале. Например:
Давайте детальнее рассмотрим команду dialog --gauge "Progress" 10 70:
--gauge— опция, которая указывает, что нужно создать прогресс-бар;"Progress"— заголовок диалогового окна;10 70— размеры диалогового окна (10 строк на 70 символов).
Выводы
Теперь Вы знаете, как отслеживать время выполнения операций в ОС Linux с помощью команды pv. Используя эту утилиту, Вы также сможете контролировать скорость передачи данных, оптимизировать процессы обработки информации и многое другое.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.































