ทั้งหมด ฉันต้องการที่จะดึงค่าจากด้านบนเพื่อจุดประสงค์ในการพล็อต ฉันกำลังใช้คำสั่งต่อไปนี้
top -l 0 -s 1 -pid 12345 -stats rsize | awk 'NR%13==0'
เมื่อฉันรันสิ่งนี้ฉันจะได้ผลลัพธ์ที่คาดหวัง แต่เมื่อฉันพยายามเปลี่ยนเส้นทางผลลัพธ์ไปยังไฟล์โดยเรียกใช้สิ่งต่อไปนี้:
top -l 0 -s 1 -pid 299 -stats rsize | awk 'NR%13==0' > output.txt
มันไม่ทำงาน ฉันควรทำอย่างไรเพื่อเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์
ฉันใช้ Mac OSX (Lion)
1
ดูเหมือนว่าโหมดแบตช์ (-b) ไม่ได้ใช้งานใน OS X คุณสามารถตั้งค่าที่มีขนาดใหญ่กว่าสำหรับ -l (พูดว่า "-l 10") แต่คุณจะไม่สามารถเห็นผลลัพธ์จนกว่าจะเสร็จสิ้นสคริปต์ , เช่น "tail -f output.txt" จะไม่ทำงานสำหรับการตรวจสอบ
—
lupincho
@lupincho: ปัญหาเดียวคือ awk buffering
—
tuergeist