Как да наблюдавате напредъка на Linux командите (с pv и напредък)

Подкана за терминал на Linux на лаптоп

Фатмавати Ахмад Заенури/Shutterstock.com



Вместо да летите на сляпо, използвайте Linux |_+_| и |_+_| команди за проследяване на напредъка на дадена команда. Тези помощни програми ще ви дадат ленти за напредък за команди, които обикновено нямат такива. Ще видите и прогнозно време до завършване.

Ако сте на полет на дълги разстояния със самолет без видеоекрани в облегалките на седалките, не е лесно да разберете колко далеч сте изминали. Знаеш кога си излетял. Знаете колко време се очаква да отнеме полетът. Но как да разберете дали сте на път, навреме или много изоставате от графика? Ако не искате да гледате филма по време на полет, обикновено можете да превключите видео екрана, за да покажете карта с позицията на вашия самолет върху него. Получавате и някои статистически данни, като очаквано време на пристигане (ETA), което е страхотно.





Стартирането на команда от прозореца на терминала понякога може да изглежда като полет на дълги разстояния без видео екран. Нямате какво да дадете каквато и да е индикация дали всичко е наред или дали процесът е спрял, нито колко близо е до завършване. Мигащият курсор не е много информативен.

|_+_| и |_+_| командите ви дават малко статистически данни и малко визуална обратна връзка. Можете да видите колко близо е процесът да завърши. Това означава, че получавате ETA за вашите работещи процеси. В сравнение с гледането в курсора, това печели ръце.



Инсталиране на pv

Трябва да инсталирате |_+_|.

За да инсталирате |_+_| в Ubuntu използвайте тази команда:

pv



За да инсталирате |_+_| във Fedora използвайте тази команда:

progress

За да инсталирате |_+_| на Manjaro използвайте тази команда:

pv

Използването на pv

|_+_| означава зрител на тръбата . Тръбопроводите трябва да участват някъде в командата. Ето пример, в който предаваме ISO изображение през |_+_| за да направите компресиран zip файл на ISO.

Реклама

За да забавят командите достатъчно, за да може да се направи екранна снимка, някои от файловете в примерите, използвани за тази статия, бяха съхранени на стар, бавен външен USB, наречен SILVERXHD.

progress

Информацията |_+_| ни дава, може да се види в долния ред на дисплея.

Отляво надясно информацията, която се показва е:

  • Данните, прехвърлени до момента.
  • Времето изтече далеч.
  • Скоростта на пренос на данни (пропускателна способност).
  • Лента за напредък и процент завършена цифра.
  • Прогнозното оставащо време до завършване (ETA).

Копиране на файл с pv

За да копирате файл с изход от |_+_|, използвайте тази команда:

pv

Получаваме отчет за напредъка, когато файлът се копира.

копиране на файл с pv в прозорец на терминала

Копиране на множество файлове с pv

За да копирате множество файлове и папки с |_+_| трябва да използваме малък трик. Използваме |_+_| за да преместите файловете вместо нас.

pv

Реклама

|_+_| част от командата инструктира |_+_| за да създадете (|_+_|) архив на файловете в папката help-files. Това се предава чрез |_+_| така че да получим дисплей за напредъка. След това се връща обратно в |_+_| за последната част от командата. Архивът се извлича (|_+_|) и директорията се променя (|_+_|) на Документи преди извличането.

И така, файловете и папките, които са в помощните файлове, се копират в папката Documents, с показване на напредъка.

Този път резултатът е малко по-различен.

Ние не получаваме ETA. Лентата за напредъка вече показва движещ се индикатор. Показва, че процесът е активен, но не расте отляво надясно като традиционна лента за напредък. |_+_| е ограничено до показване на информацията, която може да извлече от процеса, който се предава.

Използване на pv и tar за създаване на архив

Копиране на файлове с |_+_| и |_+_| не ни оставя с архивен файл. Един вид виртуален архив се създава от |_+_|, който се подава направо обратно в |_+_| за да извлечете файловете. Ако нашата цел е да копираме файлове, това е постигнато. Но какво ще стане, ако искаме да създадем архивен файл?

Все още можем да използваме |_+_| за да създадете архивен файл и да получите отчет за напредъка от |_+_|. Опциите, използвани с |_+_| са |_+_| (създайте архив), |_+_| (компресирайте с gzip) и |_+_| (име на файла на архива).

Имайте предвид, че използваме |_+_| като име на файла, което причинява |_+_| да използвам stdout , и да запише неговия изход в прозореца на терминала. Не виждаме този изход, защото се предава през |_+_|.

Реклама

Истинското име на архива ще бъде името на файла, от който предаваме изхода от |_+_| в В този случай това е help-files.tgz.

pv

Получаваме същите индикатори за напредък, както преди, и архивният файл се създава за нас.

СВЪРЗАНИ: Как да компресирате и извличате файлове с помощта на командата tar в Linux

Опции за pv дисплей

Има редица опции, които можете да използвате с |_+_| да промени подробностите в своя доклад.

Ако използвате някоя от тези опции, всички други опции се изключват. Така че, ако искате да използвате три от опциите за показване, тогава трябва да посочите тези три опции.

Използвайки |_+_| без никакви опции е същото като използването на |_+_| настроики.

  • -стр : показване на процент завършен. Това е лентата за напредък и цифрата за завършен процент.
  • : показва изминалото време .
  • : показване на И .
  • -r : показване на ставка на трансфер на данни.
  • : показване на байт count (данните, прехвърлени досега).
  • : показва процента като цяло число . Това отпечатва завършения процент като цяло число, с всяка нова актуализация на нов ред.

Нека повторим последната команда и предадем |_+_| (процент завършен) опция до |_+_|.

pv

Реклама

Това изключва всички други опции за показване. |_+_| предоставя само процента завършен елемент.

Защото |_+_| не получава процент завършена цифра от |_+_|, лентата за напредък се заменя с движещ се индикатор. Няма процентна цифра.

Използване на pv с wc

Можем да използваме |_+_| за въвеждане на текстов файл (или файлове) в |_+_|. |_+_| след това ще преброи връщанията на карета, знаците и думите и |_+_| ще ни даде отчет за напредъка.

Тук прехвърляме всички .page файлове в директорията help-files в |_+_|.

Когато |_+_| завършва, можем да видим нашия брой връщания на карета (редове), знаци и думи от всички .page файлове в папката help-files.

Инсталиране на командата за напредък

|_+_| команда дава същия вид полезна информация като |_+_|, но работи със специфичен набор от команди на Linux.

За да инсталирате |_+_| в Ubuntu, използвайте тази команда:

pv

За да инсталирате |_+_| във Fedora, използвайте тази команда:

zip

sudo dnf инсталира напредък в терминална вдовица

За да инсталирате |_+_| в Manjaro, използвайте тази команда:

pv

Прогресът на командите работи с

Въведете |_+_| в прозореца на терминала и натискането на Enter ще ви даде списък с командите, които |_+_| работи със.

pv

Използване на Progress With Pipes

Има две техники, които можем да използваме за наблюдение на команди с |_+_|. Първият е използването на тръби.

|_+_| командата е в списъка с поддържани команди, които |_+_| може да наблюдава, така че нека използваме |_+_|.

Опциите, които ще използваме, са стандартните |_+_| (създайте архив), |_+_| (компресирайте с gzip) и |_+_| опции (име на файл). Ще създадем компресиран архив на всичко в папката help-files и архивът ще бъде наречен help.tgz.

Прехвърляме това в |_+_| и с помощта на |_+_| (монитор) опция, така че |_+_| продължава да отчита процеса, докато не приключи.

pv

Прозорецът на терминала ще покаже напредъка на |_+_| команда, докато създава архива.

Реклама

Тъй като всеки файл се обработва, той се изписва със следната информация:

  • ID на процеса.
  • Името на процеса.
  • Процент завършен.
  • Обработени данни и общ размер на файла.
  • Скорост на данни (пропускателна способност).
  • Очаквано оставащо време (ETA).

Може да се изненадате да видите да се появи втори набор от данни. Този първи набор от данни е за |_+_|. Вторият е за |_+_|. |_+_| повиквания |_+_| за извършване на компресията. Защото |_+_| е в списъка с поддържани команди, |_+_| доклади за това.

Използване на прогрес в режим на непрекъснато наблюдение

Можете да използвате |_+_| в режим на непрекъснато наблюдение в реално време с помощта на опцията -M (монитор).

Въведете следната команда в прозорец на терминала:

tar

|_+_| ще съобщи, че няма изпълнявани команди, които да наблюдава. Но не се връщате в командния ред. |_+_| изчаква, докато стартира команда, която може да наблюдава. След това автоматично ще започне да докладва за него.

В друг прозорец на терминала въведете команда, която е в списъка с команди, които прогресът може да наблюдава.

Ще използваме |_+_|. Командите, които са приключили твърде бързо, няма да се регистрират с |_+_|, така че ще изброим съдържанието на много дълъг текстов файл.

tar -c help-files/

Реклама

В прозореца на терминала с |_+_| в него ще видите статистика за |_+_| команда, докато се изпълнява и работи към завършване.

Когато |_+_| завършва изброяването на файла |_+_| се връща в състояние на изчакване.

Всеки път, когато една от командите, за които може да докладва, изпълнява значителна задача, |_+_| автоматично ще го наблюдава и ще докладва за него.

Това е доста чисто.

100% завършен

Премахнете догадките, като се чудите как се справя една продължителна команда и си направете почивка от съзерцаването на курсора си с |_+_| и |_+_| .

Linux команди
Файлове катран · pv · котка · tac · chmod · сцепление · разл · sed · С · човек · pushd · popd · fsck · тестов диск · сек · fd · пандока · CD · $PATH · awk · присъединяване · jq · сгънете · уникален · journalctl · опашка · състояние · ls · fstab · изхвърли · по-малко · chgrp · chown · rev · виж · струни · Тип · преименувайте · цип · разархивирайте · монтиране · umount · Инсталирай · fdisk · mkfs · rm · rmdir · rsync · df · gpg · ние · нано · mkdir · от · вътрешен · кръпка · преобразувам · rclone · накъсайте · SRM
процеси псевдоним · екран · връх · хубаво · renice · напредък · strace · система · tmux · chsh · история · в · партида · Безплатно · който · dmesg · потребителски мод · п.с · chroot · xargs · tty · мизичко · lsof · vmstat · изчакване · стена · да · убиват · сън · sudo · неговата · време · groupadd · потребителски мод · групи · lshw · изключвам · рестартирайте · Спри се · изключване · passwd · lscpu · crontab · дата · bg · fg
Работа в мрежа netstat · пинг · трасиране · ip · ss · кой е · fail2ban · bmon · Вие · пръст на ръката · nmap · ftp · къдрица · wget · Кой · кой съм аз · В · iptables · ssh-keygen · ufw

СВЪРЗАНИ: Най-добрите Linux лаптопи за разработчици и ентусиасти

ПРОЧЕТЕТЕ СЛЕДВАЩО
  • & rsaquo; Кибер понеделник 2021: Най-добрите технологични сделки
  • › 5 уебсайта, които всеки потребител на Linux трябва да направи отметка
  • › Функции срещу формули в Microsoft Excel: Каква е разликата?
  • › Компютърната папка е 40: Как звездата на Xerox създаде работния плот
  • › Как да намерите своя Spotify Wrapped 2021
  • › Какво представлява MIL-SPEC защита от изпускане?
Снимка на профила на Дейв Маккей Дейв Маккей
Дейв Маккей за първи път използва компютри, когато перфорираната хартиена лента беше на мода и оттогава той програмира. След повече от 30 години в ИТ индустрията, той вече е технологичен журналист на пълен работен ден. По време на кариерата си той е работил като програмист на свободна практика, мениджър на международен екип за разработка на софтуер, ръководител на проекти за ИТ услуги и, последно, като служител по защита на данните. Неговото писане е публикувано от howtogeek.com, cloudsavvyit.com, tenterpriser.com и opensource.com. Дейв е евангелист на Linux и привърженик на отворен код.
Прочетете пълната биография

Интересни Статии