ฉันได้รับผลลัพธ์จากโปรแกรมที่สร้างหนึ่งบรรทัดที่เป็นส่วนหัวของคอลัมน์จากนั้นเป็นกลุ่มของข้อมูล ฉันต้องการตัดคอลัมน์ต่าง ๆ ของผลลัพธ์นี้และดูเรียงตามคอลัมน์ต่าง ๆ ไม่มีส่วนหัวที่ตัดและการเรียงลำดับจะประสบความสำเร็จได้อย่างง่ายดายผ่านทาง-k
ตัวเลือกที่จะsort
ไปพร้อมกับcut
หรือawk
เพื่อดูชุดย่อยของคอลัมน์นี้ อย่างไรก็ตามวิธีการเรียงลำดับนี้จะรวมส่วนหัวของคอลัมน์เข้ากับส่วนที่เหลือของบรรทัดผลลัพธ์ มีวิธีง่ายๆในการรักษาส่วนหัวไว้ที่ด้านบนหรือไม่?
head
กำลังอ่านมากกว่าหนึ่งบรรทัดในบัฟเฟอร์และทิ้งมันเกือบทั้งหมด sed
ความคิดของฉันมีปัญหาเดียวกัน
lseek
อินพุตที่สามารถใช้ได้เท่านั้นดังนั้นจึงไม่สามารถใช้งานได้เมื่ออ่านจากไพพ์ มันจะทำงานถ้าคุณเปลี่ยนเส้นทางไปยังไฟล์>outfile
จากนั้นเรียกใช้{ head -n 1; sort; } <outfile
{ head -1; sort; }
การทำงานได้ มันจะลบข้อความจำนวนมากเสมอหลังจากบรรทัดแรก ไม่มีใครรู้ว่าทำไมสิ่งนี้เกิดขึ้น?