เทอร์มินัลปิงวิธีรับจำนวนเต็มอย่างง่าย


1

ฉันสงสัยว่าคุณจะได้รับผลจำนวนเต็มอย่างง่าย ๆ แทนที่จะเป็นข้อมูลเบ็ดเตล็ดเช่นขนาดแพ็คเก็ตหมายเลขการส่งและเป้าหมาย

ทำอย่างละเอียด: ฉันต้องการให้ผลลัพธ์ที่ดูเหมือน:

117.85

การตอบกลับจำนวนเต็มเดียวคล้ายกับวิธีไวยากรณ์: ping -c 1 google.com ส่งกลับผลลัพธ์เดียว แต่ฉันต้องการวิธีการละเว้นรายงาน ping รายละเอียดและแสดงหมายเลขเดียวเท่านั้น

ขอบคุณล่วงหน้า.

คำตอบ:


3

ลองสิ่งนี้:

ping -c 1 google.com | grep "time=" | sed -E "s/(.*)time=([.0-9]+) ms/\2/"

หากคุณต้องการได้รับค่าน้อยที่สุดสำหรับจำนวนคำขอใช้:

ping -q -c 5 google.com | tail -1 | cut -d "=" -f 2 | cut -d "/" -f 1

แทนที่ 1 ใน -f 1 ด้วย:

  • 2 สำหรับค่าเฉลี่ย
  • 3 สำหรับสูงสุด

ยอดเยี่ยมสิ่งนี้ใช้ได้อย่างสมบูรณ์แบบ
user4493605

1
หรือ ping -c 1 google.com | sed -nE "/time=/s/(.*)time=([.0-9]+) ms/\2/p" ถ้าคุณต้องการให้มันสั้น :-)
nohillside
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.