Zmierz przepustowość rury w powłoce


35

Istnieje polecenie powłoki, które pozwala zmierzyć szybkość przechodzenia przez nie danych, dzięki czemu można zmierzyć prędkość wydawania poleceń w potoku. Więc zamiast:

$ somecommand | anothercommand

możesz zrobić coś takiego:

$ somecommand | ??? | anothercommand

I myślę, że statystyki przepustowości (bajty / s) są drukowane do stderr. Ale nie mogę za życia przypomnieć sobie, czym było to polecenie.

Odpowiedzi:


47

cpipe jest prawdopodobnie lepszy do tych celów, ale innym powiązanym programem jest pv (Pipe Viewer):

Zrzut ekranu pv ze strony głównej pv

Jeśli podasz --rateflagę, wyświetli się szybkość transferu


To był ten!
Alex B

17

Potrzebujesz narzędzia o nazwie cpipe .

Stosowanie:

tar cCf / - usr | cpipe -vr -vw -vt > /dev/null

Wydajność:

...
  in:  19.541ms at    6.4MB/s (   4.7MB/s avg)    2.0MB
 out:   0.004ms at   30.5GB/s (  27.1GB/s avg)    2.0MB
thru:  19.865ms at    6.3MB/s (   4.6MB/s avg)    2.0MB
... 

2
Nie znaleziono już żadnego ważnego odniesienia do cpipe..., ale pvjest równoważne.
Yves Martin

1

Jeśli masz Python 2 lub 3 i pip ( sudo apt-get install python-pip), możesz zainstalować tqdm:

    python -m pip install tqdm

Następnie po prostu:

    somecommand | tqdm | anothercommand

Jeśli potrzebujesz pomocy, biegnij tqdm --help. Ma wiele opcji. Przeczytaj więcej i sugestie na https://github.com/tqdm/tqdm


1

Jak widać na https://askubuntu.com/a/620234 , zauważ, że pvprzynajmniej może znacznie spowolnić twoją przepustowość. Artykuł powiązany z okładkami dd, ale chodzi o to, że pvmoże spowolnić twoje rzeczy. Jeśli cię to obchodzi i na przykład przesyłasz terabajty danych.


0

Teraz dostępne jest nowe narzędzie do sprawdzania dostępu do plików procesów już uruchomionych, wyświetlania postępu i szacowania przepustowości: https://github.com/Xfennec/cv

Jeśli Twój somecommandlub anothercommandjuż go znasz cv, jest tak samo łatwy w użyciu, jak watch cv -wqw przeciwnym razie musisz użyć -copcji monitorowania konkretnych procesów.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.