วัดทรูพุตของท่อในเปลือก


35

มีคำสั่งเชลล์ที่ให้คุณวัดความเร็วของข้อมูลที่ผ่านไปดังนั้นคุณสามารถวัดความเร็วของเอาต์พุตของคำสั่งในไพพ์ได้ ดังนั้นแทนที่จะ:

$ somecommand | anothercommand

คุณสามารถทำสิ่งที่ชอบ:

$ somecommand | ??? | anothercommand

และสถิติปริมาณงาน (ไบต์ / วินาที) ถูกพิมพ์ไปยัง stderr ฉันคิดว่า แต่ฉันทำไม่ได้สำหรับชีวิตของฉันจำได้ว่าคำสั่งนั้นคืออะไร

คำตอบ:


47

cpipeน่าจะดีกว่าสำหรับวัตถุประสงค์เหล่านี้ แต่โปรแกรมอื่นที่เกี่ยวข้องคือpv (Pipe Viewer):

สกรีนช็อตของ pv จากโฮมเพจ pv

หากคุณให้--rateธงมันจะแสดงอัตราการถ่ายโอน


นั่นคือหนึ่ง!
Alex B

17

คุณต้องยูทิลิตี้ที่เรียกว่าcpipe

การใช้งาน:

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

เอาท์พุท:

...
  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
ไม่พบการอ้างอิงที่ถูกต้องไปยังcpipe... แต่pvเทียบเท่า
Yves Martin

1

หากคุณมี Python 2 หรือ 3 และ pip ​​( sudo apt-get install python-pip) คุณสามารถติดตั้งtqdm:

    python -m pip install tqdm

จากนั้นเพียง:

    somecommand | tqdm | anothercommand

tqdm --helpหากคุณต้องการความช่วยเหลือการทำงาน แต่ก็มีจำนวนมากของตัวเลือก อย่าลังเลที่จะอ่านเพิ่มเติมและให้คำแนะนำได้ที่https://github.com/tqdm/tqdm


1

ดังที่เห็นในhttps://askubuntu.com/a/620234สังเกตว่าpvอย่างน้อยสามารถทำให้ปริมาณงานของคุณช้าลงอย่างมาก บทความที่เชื่อมโยงกับหน้าปกddแต่ประเด็นก็คือpvจะทำให้เนื้อหาของคุณช้าลง หากคุณเป็นห่วงและหากคุณกำลังถ่ายโอนข้อมูลเทราไบต์


0

ขณะนี้เครื่องมือใหม่พร้อมใช้งานเพื่อตรวจสอบการเรียกใช้การเข้าถึงไฟล์ประมวลผลแสดงความคืบหน้าและการประเมินปริมาณงาน: https://github.com/Xfennec/cv

หากคุณรู้จักsomecommandหรือanothercommandเป็นที่รู้จักกันดีแล้วcvมันก็ใช้งานง่ายเหมือนwatch cv -wqหรือคุณต้องใช้-cตัวเลือกในการตรวจสอบกระบวนการของคุณโดยเฉพาะ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.