Bir Linux sisteminde büyük dosyaları, özellikle kopyalama / yedekleme / sıkıştırma işlemlerini işlerken, bu büyük dosyaların işlem ilerlemesini bilmek isteyebilirsiniz, ancak boru hattında çalışan terminal aracı, ilerleme bilgilerini görüntüleme işlevini sağlamayabilir. Boru hattından geçen verilerin ilerleme bilgilerini, geçen süreyi, ilerleme çubuğunda görüntülenen tamamlanma yüzdesini, mevcut boru hattı verimini, aktarılan veri miktarını ve tahmini tamamlanma süresini izlemek için 'pv' veya Boru Görüntüleyici adlı bir araca ihtiyacınız olduğunda Bekle.
dilbilgisi:
pv pvHerhangi bir seçenek olmadan, varsayılan değer -p --progress (ilerleme çubuğu ile tamamlanma oranı), -t --timer (geçen süre), -e --eta (tahmini kalan süre), -r - ile gelir oranı (aktarılan toplam veri miktarı), -b - bayt (toplam veri miktarı)
Boru Görüntüleyici, boru hattından geçen verilerin ilerlemesini izlemek için kullanılır.pv, kullanıcıların boru hattından geçen verilerin ilerlemesini görmelerini sağlar ve zaman tüketimi, tamamlanma oranı, iş hacmi, aktarım hacmi ve ETA gibi bilgiler sağlar. Yukarıdaki işlevi elde etmek için, komutun uygun seçeneklerle iki işlem arasındaki boru hattına eklenmesi gerekir.Standart girişi standart çıktıya onun üzerinden ulaşır ve ilerleme bilgisi standart hatada görüntülenir. Pv sırayla kopyalanır FILE'daki veri standart çıktısına gönderilir (- standart girdi anlamına gelir), eğer FILE sağlanmadıysa, sadece standart girdi kopyalanır Bu komut satırının davranışı cat'e benzer.
Not: Giriş verisi miktarı hesaplanamıyorsa ve çıkış bir blok cihazsa, blok cihazının boyutu, -S --stop-at-size seçeneği belirtilse bile toplam çıktı olarak kullanılır, pv bu konumda duracaktır .
Bir dosyayı açmak için pv kullanın, standart çıktı yeni bir dosyaya veya / dev / null'a yeniden yönlendirilebilir. -L seçeneği, ilerleme bilgilerini görüntülemek için uygun olan pv aracılığıyla veri akış hızını kontrol eden hız sınırını gösterir. Varsayılan ekran ilerleme bilgisi şunları içerir: aktarılan veri miktarı , Geçen süre, veri aktarım hızı, ilerleme çubuğu ve tamamlanma oranı, tahmini kalan süre.
# apt-get install pv # pv -L 50k BTRobot_v2.2.6.zip 1 > / dev / nullBir veri kanalı açmak için pv'yi kullanın ve standart zip girişi olarak pv'nin standart çıktısını kullanın.
'-', zip komutunun geçerli standart giriş verilerini sıkıştırdığı anlamına gelir.
Zip programının standart hata çıktısını temizlemek için, onu Null aygıtına yönlendirin.Bu anda çıktı bilgisi sadece pv'nin standart hata çıktısıdır.
# pv -L 50k BTRobot_v2.2.6.zip | zip 1 > / dev / null # pv -L 50k BTRobot_v2.2.6.zip | (zip 1 > cups.zip 2 > / dev / null)Dosyaları doğrudan sıkıştıran ve ilerleme bilgilerini pv aracılığıyla görüntüleyen gzip yürütme sürecinin karşılaştırması
root @ iZmfgnjkehk13uZ: / opt # gzip -c ftp_down.sh > pvtest.tar.gz root @ iZmfgnjkehk13uZ: / opt # du -sb pvtest.tar.gz root @ iZmfgnjkehk13uZ: / opt # pv -L 10k ftp_down.sh | gzip > pvtest.tar.gzDosyanın satır / kelime / bayt sayısını hesaplamak için wc komutunu kullanın. Wc'nin ilerleme bilgisi işlevi yoktur.Pv üzerinden veri aktarım miktarını izleyerek, mevcut dosyanın tamamlanma oranını elde etmek kolaydır.
root @ iZmfgnjkehk13uZ: / opt # pv -L 5k pvtest.tar.gz | wcDosyanın içeriğini aramak için grep komutunu kullanın. -N komutu, veri hacminin tamamlanma yüzdesini bir tamsayı olarak görüntüler ve -i ilerleme güncelleme aralığını (ondalık olabilir) ayarlar. Tamamlanma yüzdesini görmek kolaydır.
root @ iZmfgnjkehk13uZ: / opt # pv -n -i 0.5 -L 5k pvtest.tar.gz | grep saniyeDosyanın içeriğini aramak için grep komutunu kullanın, -N pv'den geçen boru hattı akışının adını işaretleyin.
root @ iZmfgnjkehk13uZ: / opt # pv -N GrepRate -i 0.1 -L 5k pvtest.tar.gz | grep saniyeTar komutundaki ilk '-', yedekleme dosyasını standart çıktıya yazar Yedek dosyası, bir boru aracılığıyla pv'nin standart girişi olarak kullanılır ve down.tgz dosyasına pv aracılığıyla standart çıktı olarak yazılır.
pv, -t --timer, -r --rate, -b --bytes seçeneklerinde bazı uzunluk seçeneklerini görüntüler.
Toplam veri miktarı daha sonra olamayacağından, tamamlanma oranının ilerleme çubuğu görüntüsü net bir şekilde görüntülenemez ve -e --eta ayrıca -p --propress görüntülenemez.
root @ iZmfgnjkehk13uZ: / opt # tar -czf-./nginx/ | (pv -L 1000k -p --timer --rate --bytes > nginx.tar.gz)-S parametresiyle toplam veri miktarını belirtin ve önce ilerleme çubuğunun görüntüsü doğru olmalıdır. İletişim kutusu yalnızca standart giriş sayısını kabul eder, bu nedenle pv, sayı oranını çıkarmak için -n parametresini kullanmalıdır ve pv'nin standart hatası standart çıktıya yönlendirilmelidir , iletişim kutusu standart girişten veri alabilir Ölçü, ilerleme çubuğunun türüdür, sonraki parametreler açıklama bilgileri, ilerleme çubuğunun yükseklik terminal oranı ve uzunluk terminal oranıdır.
root @ iZmfgnjkehk13uZ: / opt # tar -czf-./nginx/ | (pv -L 10k -s 69705 -n > nginx.tgz) 2 > 1 | dialog --gauge "İlerleme" 1070Diyelim ki A makinesi, 128.160.171.181 adresi; B makinesi, 128.160.64.115 adresi
Her şeyden önce, B makinesinde veri oluşturmanız gerekir. Veriler aynı dizindedir. / Usr / lib içindeki tüm dosyaları yükleme dizinine kopyalamak için tar ve pv kullanın.İlerleme bilgilerini bu şekilde görebilirsiniz.
root @ iZmfgnjkehk13uZ: / opt # cd / tmp / root @ iZmfgnjkehk13uZ: / tmp # mkdir yükleme root @ iZmfgnjkehk13uZ: / tmp # cd yükle / root @ iZmfgnjkehk13uZ: / tmp / upload # tar -C / usr / lib -cf-. | pv | tar -xf-B makinesine nc komutunu verin ve 6666 numaralı bağlantı noktasını dinlemeye başlayın, ardından nc'nin askıda kalmaya başladığını ve bağlantıyı beklediğini göreceksiniz.
Makine A komut vermeye başladığında, makine B ayrıca veri iletimini göstermek için bir ilerleme çubuğu görüntüleyebilir.
A makinesindeki ilerleme çubuğunun tamamlanma oranını görmek istiyorsanız, toplam veri miktarını hesaplamak için du -sb yüklemesini kullanabilirsiniz.
tar -cf-yükleme | pv | nc -l -p 66661,27 GB 0:00:11 tar -cf-upload | pv -s $ (du -sb yükleme | awk '{print $ 1}') | nc -l -p 66661.27GiB 0:00:25% 101A makinesinde, makine B'ye ve belirlenmiş bağlantı noktasına erişmek ve dosyayı tar ile açmak için nc komutunu kullanın.Verilerin aktarılmaya başladığını ve bu sırada ilerleme çubuğunun görüntülendiğini görebilirsiniz.
nc 128.160.171.1816666 | pv | tar -xf- 1,27 GB 0:00:11Alan sınırlıdır. Pv komutu burada gösterilmektedir. Aslında, onu sıkıştırma veya açma işleminin ilerlemesini görmek için daha çok kullanıyorum.Ayrıca, ilgili parametreleri gerektiği gibi ayarlayabilirsiniz.
Daha sonra işletme ve bakım hakkında daha fazla bilgi paylaşacağım ve ilgilenen arkadaşlar buna dikkat edebilir!