Kif Tissorvelja l-Progress tad-Data (Kopja/Backup/Kkompressa) billi tuża pv Command


Meta tagħmel backups, tlaħħaq/ċaqlaq fajls kbar fis-sistema Linux tiegħek, tista 'tkun trid timmonitorja l-progress ta' operazzjoni għaddejja. Ħafna għodod terminali m'għandhomx il-funzjonalità li jippermettulek tara l-informazzjoni dwar il-progress meta kmand ikun qed jaħdem f'pajp.

F'dan l-artikolu, se nħarsu lejn kmand Linux/Unix importanti msejjaħ pv.

Pv hija għodda bbażata fuq terminali li tippermettilek tissorvelja l-progress tad-dejta li qed tintbagħat permezz ta 'pajp. Meta tuża l-kmand pv, jagħtik wirja viżwali tal-informazzjoni li ġejja:

  1. Iż-żmien li jkun għadda.
  2. Il-perċentwal tlesta inkluż bar ta' progress.
  3. Juri r-rata ta' throughput attwali.
  4. Id-dejta totali trasferita.
  5. u l-ETA (Ħin stmat).

Kif tinstalla pv Command fil-Linux?

Dan il-kmand mhuwiex installat awtomatikament fuq il-biċċa l-kbira tad-distribuzzjonijiet tal-Linux, għalhekk tista 'tinstallah billi ssegwi l-passi hawn taħt.

L-ewwel trid tixgħel ir-repożitorju EPEL u mbagħad tħaddem il-kmand li ġej.

# yum install pv
# dnf install pv            [On Fedora 22+ versions]
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!
# 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) ...
# emerge --ask sys-apps/pv

Tista' tuża l-port biex tinstallah kif ġej:

# cd /usr/ports/sysutils/pv/
# make install clean

JEW żid il-pakkett binarju kif ġej:

# pkg_add -r pv

Kif nuża pv Command fil-Linux?

pv jintuża l-aktar ma' programmi oħra li m'għandhomx il-kapaċità li jimmonitorjaw il-progress ta' operazzjoni li tkun għaddejja. Tista 'tużah, billi tpoġġiha f'pipeline bejn żewġ proċessi, bl-għażliet xierqa disponibbli.

L-input standard ta 'pv se jiġi mgħoddi għall-output standard tiegħu u l-progress (output) se jiġi stampat fuq żball standard. Għandu mġiba simili bħall-kmand tal-qtates fil-Linux.

Is-sintassi tal-kmand pv kif ġej:

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

L-għażliet użati ma 'pv huma maqsuma fi tliet kategoriji, swiċċijiet tal-wiri, modifikaturi tal-output u għażliet ġenerali.

  1. Biex tixgħel il-bar tal-wiri, uża l-għażla -p.
  2. Biex tara l-ħin li għadda, uża l-għażla –timer.
  3. Biex tixgħel it-tajmer ETA li jipprova taqta' kemm se jieħu qabel it-tlestija ta' operazzjoni, uża l-għażla –eta. Il-suppożizzjoni hija bbażata fuq ir-rati ta' trasferiment preċedenti u d-daqs totali tad-dejta.
  4. Biex tixgħel counter rate uża l-għażla –rate.
  5. Biex turi l-ammont totali ta' dejta trasferita s'issa, uża l-għażla –bytes.
  6. Biex turi l-progress informa ta' perċentwal sħiħ minflok indikazzjoni viżwali, uża l-għażla -n. Dan jista 'jkun tajjeb meta tuża pv mal-kmand tad-djalogu biex turi l-progress f'kaxxa tad-djalogu.

  1. Biex tistenna sakemm l-ewwel byte jiġi trasferit qabel ma turi informazzjoni dwar il-progress, uża l-għażla –wait.
  2. Biex wieħed jassumi li l-ammont totali ta' dejta li trid tiġi trasferita huwa SIZE bytes meta tikkalkula l-perċentwali u l-ETA, uża l-għażla –size SIZE.
  3. Biex tispeċifika sekondi bejn l-aġġornamenti, uża l-għażla –interval SECONDS.
  4. Uża l-għażla –force biex iġġiegħel operazzjoni. Din l-għażla ġġiegħel lil pv juri viżwali meta żball standard ma jkunx terminal.
  5. L-għażliet ġenerali huma –help biex tintwera informazzjoni dwar l-użu u –version biex tintwera informazzjoni dwar il-verżjoni.

Uża pv Kmand b'Eżempji

1. Meta l-ebda għażla ma tkun inkluża, il-kmandi pv jimxu b'għażliet default -p, -t, -e, -r u -b.

Pereżempju, biex tikkopja l-fajl opensuse.vdi f'/tmp/opensuse.vdi, mexxi dan il-kmand u ara l-istrixxa tal-progress fi screencast.

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

2. Biex tagħmel fajl zip mill-fajl /var/log/syslog tiegħek, mexxi l-kmand li ġej.

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

3. Biex tgħodd in-numru ta 'linji, kelma u bytes fil-fajl /etc/hosts filwaqt li turi l-istrixxa tal-progress biss, mexxi dan il-kmand hawn taħt.

# pv -p /etc/hosts | wc

4. Monitora l-progress tal-ħolqien ta 'fajl backup bl-użu ta' utilità tal-qatran.

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

5. Bl-użu ta 'pv u għodda bbażata fuq terminali tad-djalogu flimkien biex toħloq bar ta' progress tad-djalogu kif ġej.

# tar -czf - ./Documents/ | (pv -n > backup.tgz) 2>&1 | dialog --gauge "Progress" 10 70

Sommarju

Din hija għodda tajba bbażata fuq terminali li tista 'tuża ma' għodod li m'għandhomx il-ħila, biex tissorvelja l-progress ta 'operazzjonijiet bħal ilaħħqu/ċaqliq/backup fajls, għal aktar għażliet iċċekkja man pv.

Nispera li ssib dan l-artikolu ta 'għajnuna u tista' tpoġġi kumment jekk għandek xi ideat x'iżżid dwar l-użu tal-kmand pv. U jekk ikollok xi żbalji waqt li tużaha, tista 'ukoll tħalli kumment.