แถบความคืบหน้าที่มีความยาวคงที่จำนวนไฟล์หรือไบต์หรือดีกว่า แต่ตัวจับเวลาที่แสดงเวลาที่เหลือโดยประมาณนั้นจะเหมาะสมที่สุด
zip
พฤติกรรมมาตรฐานของดูเหมือนจะพิมพ์บรรทัดสำหรับทุกไฟล์ที่ประมวลผล แต่ฉันไม่ต้องการให้ข้อมูลมากเกินไปเมื่อฉันซิปไฟล์หลายพันไฟล์ ฉันต้องการเดาว่ามันจะใช้เวลานานแค่ไหน
ฉันลองใช้ตัวเลือก-q
( --quiet
) ร่วมกับ-dg
( --display-globaldots
) แต่นั่นก็ทำให้ stdout เต็มไปด้วยจุดหลายบรรทัดและไม่แสดงสิ่งที่มีประโยชน์
ฉันพยายาม-qdgds 10m
ตามที่กล่าวไว้ในหน้า man แต่ได้ผลลัพธ์เดียวกัน
ฉันลองแล้ว-db
( --display-bytes
) และ-dc
( --display-counts
) แต่ดูเหมือนจะไม่มีตัวเลือกระดับโลกดังนั้นจึงพิมพ์ใหม่สำหรับชื่อไฟล์ทุกชื่อ
สุดท้ายฉันพยายามมันด้วยกัน-q
เหมือน-qdbdc
แต่เพียงว่าไม่มีอะไรที่เอาท์พุท
สนุกพอฉันพบหน้าคนในเว็บไซต์ info-zip ที่กล่าวถึงตัวเลือก-de
( --display-est-to-go
) ซึ่งควรจะ "แสดงเวลาโดยประมาณเพื่อให้การดำเนินการเก็บถาวรเสร็จสิ้น"
ฟังดูเหมือนสิ่งที่ฉันต้องการ แต่ปัญหาคือเวอร์ชั่นของฉันzip
ไม่มีคุณสมบัตินั้น ฉันใช้ Ubuntu 14.04.1 64 บิต, bash-4.3.30 (1) และ zip-3.00 ตาม Wikipedia นี่เป็นรุ่นล่าสุดที่เสถียรของ zip
มีรุ่นเบต้าที่ยังไม่เผยแพร่ในหน้าแหล่งข้อมูล info-zip แต่ฉันไม่อยากมอบข้อมูลของฉันให้เป็นรุ่นเบต้า
pv /path/to/file | gzip > /path/to/file.gz
tee
เข้าสู่ระบบการส่งออกไปยังแฟ้มและใช้มันเพื่อให้ข้อมูลในระดับสูงด้วย ก่อนที่จะเริ่ม zip ให้ทำการนับจำนวนไฟล์ทั้งหมด (ด้วยls
หรือfind -type f
) และในขณะที่ซิปให้อ่านไฟล์บันทึกสำหรับจำนวนบรรทัดของไฟล์ที่ถูกประมวลผลที่มีอยู่แล้ว (grep
สำหรับบรรทัดที่ถูกต้องเพื่อดูและwc -l
สำหรับบรรทัด นับ) ดังนั้นข้อมูลระดับสูงของคุณจะแสดงบางอย่างเช่น "234/76438 ไฟล์ที่ประมวลผล";